2015-05-28 5 views
1

Теперь я хочу сделать функцию AJAX, чтобы заполнить форму после выбора в меню. Так что это мой JQuery код:jQuery и AJAX: Заполните форму

('select').change(function(){ 
    $.ajax({ 
     type : "GET", 
     url : 'formulaire.php', 
     data : formulaire, 
     success: function(server_response){ 

     } 
    }); 

И моя страница PHP:

include '../Modele/sql.php'; 

if (isset($_GET['formulaire'])){ 
$formulaire = $_GET['formulaire']; 
$formulaire = array('formulaire' => $formulaire); 

// On effectue la requête vers la base de données 
$sql = 'SELECT * FROM saisie_formulaire WHERE FOR_ID = :formulaire'; 
$requete = $bdd->prepare($sql); 
$requete->execute($formulaire); 

$compteur = $requete->rowCount($sql); 

// S'il y a un résultat, on retourne le nombre de lits pour chaque type et chaque période 
if ($compteur >= 1){ 
    while ($resultat = $requete->fetch(PDO::FETCH_OBJ)){ 


    } 
} 

Но я не имею понятия о том, как вернуться после моего SQL-запроса для заполнения моего HTML-формы. У кого-нибудь есть?

+0

Вы имеете в виду, вы получите результаты от MySQL, но вы не знаете, что с ними делать? Смешной код mélange между français и anglais, en tous cas –

+0

Да, я не знаю, как их использовать для заполнения моей формы. Humm, мой код написан на французском языке, а не на английском языке. ^^ – AragornD7

+0

Ну, это базовый анализ MySQL: '$ value = $ resultat ['columnName']', например: '$ email = $ resultat ['email']' –

ответ

1

Вот что вы можете сделать:

$resultat = $requete->fetch(PDO::FETCH_OBJ); 

$rows = array(); 
while($r = mysqli_fetch_assoc($resultat)) { // Transforming MySQL results into a regular array of data 
    $rows[] = $r; 
} 
echo json_encode($rows); // Echo this JSON back to the client 

И на стороне клиента, получить эту JSON данные обратно:

('select').change(function(){ 
    $.ajax({ 
     type : "GET", 
     url : 'formulaire.php', 
     data : formulaire, 
     success: function(json){ 
      console.log(json); 
      // Here you get your data as JSON, use it to populate your form. 

      $("#emailField").val(json.email); 
      $("#nameField").val(json.name); 
     } 
    }); 
+0

Хорошо, но для заполнения моей формы с помощью json я должен использовать jQuery? Если да, должен ли я использовать функцию append или val()? Мне нужна идея для каждой области моего форм, нет? – AragornD7

+0

Давай, это все основные вещи, как использовать запрос MySQL, как использовать JSON с jQuery ... если вы не знаете этого, google вокруг, есть много уроков. Я обновил свой код, чтобы показать вам, как заполнять некоторые поля. Однако, поскольку я понятия не имею, как выглядит ваша структура таблиц MySQL или HTML-код, я использовал 'json.email' и' json.name'. Вместо этого используйте свои фактические имена столбцов. –

+0

Итак, я могу получить свои данные из своей БД, но я не могу добавить их в поле, используя ваш пример. И моя консоль не показывает мне никаких ошибок, просто мой массив JSON. – AragornD7

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