Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > AJAX
AJAX Forum sur la programmation AJAX. Avant de poster : Cours AJAX, FAQ AJAX, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/08/2011, 23h37   #1
Rédacteur/Modérateur
 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 320
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 29
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 320
Points : 7 272
Points : 7 272
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
Par défaut Ajax et Insert into

Bonjour,

J’essaie de faire un page avec de l'Ajax qui permet d’insérer des informations dans une base de donnée.

L'insertion dans la base de données fonctionne, mais les champs sont vides.

Je ne sais pas d'où vient l'erreur.

Voici le code HTML :

Code html :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
<form action="ajoutUtilisateur.php" method="GET">
                        <table >
                            <tr>
                                <td>Nom : </td><td><input type="text" name="nom" ></td>
                            </tr>
                            <tr>
                                <td>Pr&eacute;nom :</td><td><input type="text" name="prenom"/></td>
                            </tr>
                            <tr>
                                <td>Email : </td><td><input type="text" name="email"/></td>
                            </tr>
                            <tr>
                                <td>Adresse : </td><td><input type="text" name="adresse"/></td>
                            </tr>
                            <tr>
                                <td>Tel : </td><td><input type="text" name="tel"/></td>
                            </tr>
                            <tr>
                                <td>www : </td><td><input type="text" name="www"/></td>
                            </tr>
                        </table>
                        <input type="button" value="Ajouter" onclick="ajouter()" />
                    </form>

Le code PHP :
Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
<?php 
 
mysql_connect('localhost', 'root', 'root');
mysql_select_db("annuaire");
 
 
$nom = $_GET['nom'];
$prenom = $_GET['prenom'];
$email = $_GET['email'];
$telephone = $_GET['telephone'];
$adresse = $_GET['adresse'];
$www = $_GET['www'];
 
 
$query = "INSERT INTO utilisateur (nom,prenom,email,telephone,adresse,www) VALUES ('$nom','$prenom','$email','$telephone','$adresse','$www')";
mysql_query($query);
 
 
?>

Et le code JS :

Code javascript :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
function ajouter(){
    var xhr = getXhr()
    // On défini ce qu'on va faire quand on aura la réponse
    xhr.onreadystatechange = function(){
        // On ne fait quelque chose que si on a tout reçu et que le serveur est ok
        if(xhr.readyState == 4 && xhr.status == 200){
            alert(xhr.responseText);
            actualiser();
        }
    }
    xhr.open("GET","ajoutUtilisateur.php",true);
    xhr.send(null);
}

PS : Je débute en ajax
__________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
QuickEvent Lite : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
______________________________________________________________________________________

La rubrique Mac - Les cours & tutoriels Mac - Critiques de Livres Mac
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2011, 03h16   #2
Futur Membre du Club
 
Inscription : août 2008
Messages : 37
Détails du profil
Informations personnelles :
Localisation : Autre

Informations forums :
Inscription : août 2008
Messages : 37
Points : 17
Points : 17
salut,

c'est normal que les champs soient vides car il te faut récupérer les données saisies d'abord et après les envoyer vers la page de traitement.

pour récupérer les données saisies tu peux ajouter des "id" à tes input.

pour envoyer les données tu les insères dans l'url
Code :
1
2
3
 
    xhr.open("GET","ajoutUtilisateur.php?var1="+var1+"&var2="+var2,true);
    xhr.send(null);
Mohamed_DEV est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2011, 07h21   #3
Rédacteur/Modérateur
 
Avatar de andry.aime
 
Homme Andry Aimé
Inscription : septembre 2007
Messages : 5 129
Détails du profil
Informations personnelles :
Nom : Homme Andry Aimé
Localisation : Ile Maurice

Informations forums :
Inscription : septembre 2007
Messages : 5 129
Points : 7 260
Points : 7 260
Bonjour,

Il est aussi préférable de tester coté client si les variables sont bien envoyé avec la fonction php isset() ou empty() avant de faire des traitements si les champs sont obligatoires.

A+
andry.aime est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2011, 07h53   #4
Rédacteur/Modérateur
 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 320
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 29
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 320
Points : 7 272
Points : 7 272
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
Citation:
Envoyé par Mohamed_DEV Voir le message
salut,

c'est normal que les champs soient vides car il te faut récupérer les données saisies d'abord et après les envoyer vers la page de traitement.

pour récupérer les données saisies tu peux ajouter des "id" à tes input.

pour envoyer les données tu les insères dans l'url
Code :
1
2
3
 
    xhr.open("GET","ajoutUtilisateur.php?var1="+var1+"&var2="+var2,true);
    xhr.send(null);
ok, merci, je vais tester ça.

Et je vais aussi ajouter des contrôle PHP pour vérifier si les champs sont vides par la suite.
__________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
QuickEvent Lite : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
______________________________________________________________________________________

La rubrique Mac - Les cours & tutoriels Mac - Critiques de Livres Mac
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h50.


 
 
 
 
Partenaires

Hébergement Web