2010-11-22 9 views
0

Nous avons 5 entrées (type="text") à la page html /edit_person.php:Obtenir la valeur de fichier php

<input id="name" name="name" value="" /> 
<input id="surname" name="surname" value="" /> 
<input id="age" name="age" value="" /> 
<input id="begin" name="begin" value="" /> 
<input id="end" name="end" value="" /> 

Et un fichier php /scripts/db.php

Si nous ouvrons dans le navigateur /scripts/db.php?get=1 il donnera quelque chose comme (un tableau avec valeurs):

$data = Array(
[name]=>Mark, 
[surname]=>Twain, 
[age]=>74, 
[begin]=>November 30, 1835, 
[end]=>April 21, 1910 
) 

Comment pouvons-nous demander /scripts/db.php?get=1 par ajax sur /edit_person.php et insérer les données reçues aux entrées?

jQuery la dernière version est utilisée et PHP 5.2.

Si l'entrée a actuellement une certaine valeur, elle doit être remplacée.

Le format de sortie de db.php peut être modifié, vous pouvez demander des options qui seraient mieux.

Merci.

+2

C'est un format assez étrange que db Sorties .php ... '$ data = Array (' est complètement inutile, le saut de ligne est le délimiteur de données? Pouvez-vous le changer pour ... disons, JSON? – AndreKR

+0

@AndreKR, oui, le format de sortie peut être changé. n'est pas bon par le Ainsi, certains éléments d'un tableau peuvent être vides. Je ne sais pas comment utiliser JSON. Ou vous voulez donner un format json d'un tableau par db.php? S'il vous plaît donner un exemple. – James

+1

Oui, convertissez les chaînes en UTF-8, placez-les dans un tableau, lancez json_encode sur ce tableau, faites-en l'écho et acceptez la réponse de Pekka. ;) – AndreKR

Répondre

4

db.php semble sortir le tableau dans un format personnalisé de type PHP. Je ne ferais pas ça. Utilisez plutôt json_encode(): Ajax de jQuery peut gérer les données JSON en mode natif.

  • Docs on jQuery.getJSON() avec des exemples

  • Si vos données JSON est une variable nommée data, l'insertion dans chaque entrée sera simple $("#name").val(data.name);

+0

Ce n'est pas un code PHP. – AndreKR

+0

Je peux changer le type de sortie de db.php, donc l'ajax peut le gérer (lequel serait le meilleur?). Essayer d'utiliser cette méthode, en raison de la mauvaise connaissance de JavaScript. – James

+0

@AndreKR true, true. Corrigé –