2015-01-07 2 views
0

.post JavaScript с PHP для того, чтобы выбрать оператор возврата.post Javascript с PHP для того, чтобы выбрать оператор возврата

Хорошо я получил этот сценарий, который работает

$.post('2.php', { id: 12345 }, function(data) { 
    // Increment vote count, etc 
}); 

Это то, что мои взгляды 2.php например

$data = $_POST['id']; 

$file = fopen("test.txt","w"); 
echo fwrite($file, $data); 
fclose($file); 

Так что я сделал тест, я запустил 1.php и увидел, что test.txt был создан с данными.

Это доказывает, что соединение было успешным.

Теперь сложная часть.

Мне нужно отправить ID: 12345 в 2.php и 2.php нужно

"select * from account where account_id='$data'"; 

а затем результат возвращения, я думаю, с помощью MYSQL_ASSOC или MYSQL_BOTH Я не уверен, что лучше.

Затем получите результат, будь то результат в 1 строке или много результат строки.

Возвращение в виде массива, а затем использовать 1.php для выполнения

alert(ArrayReturnResult); 

Предполагая, что моя таблица счета имеют это значение

account_id, account_name, account_phone, account_email 

Как это сделать?

+1

Что вам нужна помощь? Подключение/запрос к db, т.е. 'new PDO (...)/new mysqli (...)' и '-> query (" SELECT ... ")'; получение результатов, т.е. 'while ($ row = fetch()) ...'; или отправить результаты обратно в '$ .post()', т.е. 'echo json (encode ($ results))'? Прямо сейчас ваш вопрос (ы) не ясен, и я слишком широк. – Sean

ответ

3

Предполагая, что вы знаете, как установить соединение с базой данных (с использованием PDO, конечно), вы могли бы сделать что-то подобное в 2.php:

if(!empty($_POST)) { 
    $data = (int) $_POST['id']; 

    // query the table 
    $stmt = $pdo->prepare("SELECT * FROM account WHERE account_id = :id"); 
    $stmt->bindValue(":id", $data, PDO::PARAM_INT); 
    $stmt->execute(); 

    // fetch results 
    $buffer = array(); 
    while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { 
    $buffer[] = $row; 
    } 

    // output JSON string 
    echo json_encode($buffer); 
} 

Конечно, это не тестируется ... и, вероятно, небезопасно, если речь идет о личных данных.

Не забудьте обновить свой метод $.post так, что он может ожидать JSON-кодированные данные:

$.post('2.php', { id: 12345 }, function(data) { 
    console.log(data); // this will now be a JS object, from 2.php 
}, 'json'); 
Смежные вопросы