2012-06-17 2 views
0

Как обработать этот Ajax в php. Что я хочу сделать, это отправить данные в process.php и если режим = loadlinks он будет делать запрос MySQLКак обрабатывать данные ajax?

function PresentLinks(div_id){ 

     $("#loading-status").fadeIn(900,0); 
     $("#loading-status").html("<img src='img/bigLoader.gif' />");   

$.ajax({ 

      type: "POST", 
      url: "process.php", 
      data: "mode=loadlinks", 

      success: function(msg){ 

       $("#loading-status").fadeOut(900,0); 
       $("#"+div_id).html(msg); 


      } 

     });} 

Что я хочу обработать это

if($_POST['mode'] == loadlinks){ // this is what i want to ask 
$query = "SELECT * FROM site ORDER BY link_id DESC"; 
$result = MYSQL_QUERY($query) or die (mysql_error()); 
while($data = mysql_fetch_row($result)){ 
echo ("$data[1]"); 
}} 
else { 
} 

ответ

1

вам нужно процитировать строковое значение

if($_POST['mode'] == 'loadlinks'){..... 
+0

... и не приводят переменные: 'echo (" $ data [1] ");' -> 'echo $ data [1];' (или 'echo" {$ data [1]} " ; ', что было бы бессмысленно). –

2

Вам нужно указать строки в PHP. В противном случае они будут считаться константами. Вы также должны использовать PDO.

if($_POST['mode'] == 'loadlinks'){ 
    $pdo = new PDO('mysql:host=HOST;dbname=DATABASE'), 'username', 'password'); 
    $stmt = $pdo->execute('SELECT * FROM site ORDER BY link_id DESC'); 

    $sites = $stmt->fetchAll(); 
    foreach($sites as $site) { 
     echo "<div>" . $site['name'] . "</div>"; // Or whatever info you want to output 
    } 
} 

Для выполнения вам необходимо указать имена столбцов таблицы, чтобы получить вместо *.

Смежные вопросы