Recuperer les donnees dans BDD
Fermé
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
-
9 juil. 2012 à 14:18
lievre24 Messages postés 35 Date d'inscription mercredi 27 juin 2012 Statut Membre Dernière intervention 10 avril 2013 - 12 juil. 2012 à 13:45
lievre24 Messages postés 35 Date d'inscription mercredi 27 juin 2012 Statut Membre Dernière intervention 10 avril 2013 - 12 juil. 2012 à 13:45
A voir également:
- Recuperer les donnees dans BDD
- Comment récupérer les messages supprimés sur whatsapp - Guide
- Recuperer video youtube - Guide
- Comment récupérer un compte facebook piraté - Guide
- Impossible de récupérer mon compte gmail - Guide
- Récupérer mon compte facebook désactivé - Guide
15 réponses
Utilisateur anonyme
9 juil. 2012 à 14:36
9 juil. 2012 à 14:36
Bonjour
Tel qu'il est écrit, ce code n'affiche rien de spécial si l'insertion réussit. Ce n'est donc pas mauvais signe de voir une page blanche.
J'ai quand même deux remarques :
1 -
2 - pour éviter la page blanche, ajouter un message en cas de succès :
Tel qu'il est écrit, ce code n'affiche rien de spécial si l'insertion réussit. Ce n'est donc pas mauvais signe de voir une page blanche.
J'ai quand même deux remarques :
1 -
$table =formulaire; $db=formulaire;Ce ne serait pas plutôt
$table ='formulaire'; $db='formulaire';(avec des ' autour de 'formulaire' ? Ça dépend si tu as une constante formulaire définie avant, mais j'en doute.
2 - pour éviter la page blanche, ajouter un message en cas de succès :
... $resultat = mysql_query($query) or die("L'insertion a echouée car ". mysql_error() ."."); //deconnection mysql echo 'insertion réussie'; ?>
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
9 juil. 2012 à 15:16
9 juil. 2012 à 15:16
alors quelle est la difference entre:
$query = "INSERT INTO $table (nom, prenom, ...)
VALUES ('$nom', '$prenom', '...')";
et ceci;
$sql= "INSERT INTOtable (nom, prenom, ...)
VALUES ('$nom', '$prenom', '...')";
$query = "INSERT INTO $table (nom, prenom, ...)
VALUES ('$nom', '$prenom', '...')";
et ceci;
$sql= "INSERT INTOtable (nom, prenom, ...)
VALUES ('$nom', '$prenom', '...')";
Utilisateur anonyme
9 juil. 2012 à 15:49
9 juil. 2012 à 15:49
J'en vois plusieurs :
1 - Tu as changé le nom d'une variable : $query est devenu $sql. Ceci n'a aucune importance si tu passes la bonne variable à mysql_query ensuite.
2 - Tu as retiré un espace après INTO. du coup, ta seconde requête est incorrecte, INTOtable ne forme qu'un seul mot qui ne veut rien dire en SQL. Je suppose que c'est une faute de frappe et que tu voulais écrire INTO table.
3 - tu as remplacé un nom de variable ($table) par une valeur figée, table.
Comme ta variable contient 'formulaire', dans un cas, ta requête sera "INSERT INTO formulaire..." et dans l'autre "INSERT INTO table(...)
1 - Tu as changé le nom d'une variable : $query est devenu $sql. Ceci n'a aucune importance si tu passes la bonne variable à mysql_query ensuite.
2 - Tu as retiré un espace après INTO. du coup, ta seconde requête est incorrecte, INTOtable ne forme qu'un seul mot qui ne veut rien dire en SQL. Je suppose que c'est une faute de frappe et que tu voulais écrire INTO table.
3 - tu as remplacé un nom de variable ($table) par une valeur figée, table.
Comme ta variable contient 'formulaire', dans un cas, ta requête sera "INSERT INTO formulaire..." et dans l'autre "INSERT INTO table(...)
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
9 juil. 2012 à 15:57
9 juil. 2012 à 15:57
mais je crois je me suis perdu a force de lire les tuto et autres qu'en dis tu de ceci:
<?
php
//connection au serveur
$cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "INFOS" ) ;
//récupération des valeurs des champs:
//nom:
$nom = $_POST["nom"]
;
//prenom:
$prenom = $_POST["prenom"]
;
//adresse:
$adresse = $_POST["adresse"]
;
//code postal:
$cp = $_POST["codePostal"]
;
//numéro de téléphone:
$tel = $_POST["telephone"] ;
//création de la requête SQL:
$sql = "INSERT INTO personnes (nom, prenom, adresse, cp, telephone)
VALUES ( '$nom', '$prenom', '$adresse', '$cp', '$tel') " ;
//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
//affichage des résultats, pour savoir si l'insertion a marchée:
if($requete
)
{
echo("L'insertion a été correctement effectuée")
;
}
else
{
echo("L'insertion à échouée")
;
}
?>
<?
php
//connection au serveur
$cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "INFOS" ) ;
//récupération des valeurs des champs:
//nom:
$nom = $_POST["nom"]
;
//prenom:
$prenom = $_POST["prenom"]
;
//adresse:
$adresse = $_POST["adresse"]
;
//code postal:
$cp = $_POST["codePostal"]
;
//numéro de téléphone:
$tel = $_POST["telephone"] ;
//création de la requête SQL:
$sql = "INSERT INTO personnes (nom, prenom, adresse, cp, telephone)
VALUES ( '$nom', '$prenom', '$adresse', '$cp', '$tel') " ;
//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
//affichage des résultats, pour savoir si l'insertion a marchée:
if($requete
)
{
echo("L'insertion a été correctement effectuée")
;
}
else
{
echo("L'insertion à échouée")
;
}
?>
Utilisateur anonyme
Modifié par le père. le 9/07/2012 à 16:12
Modifié par le père. le 9/07/2012 à 16:12
Globalement, ça a l'air bien.
En regardant un peu plus en détail :
1 - avant d'inclure une variable dans une requête mysql, il faut échapper les caractères spéciaux avec la fonction mysql_real_escape_string, sinon tu vas avoir de gros problèmes, en particulier si les variables contiennent des apostrophes :
2 - le if($requete est inutile, tu peux directement mettre echo("L'insertion a été correctement effectuée"). En effet, s'il y a un problème dans la requête, le "or die" d'exécutera, et le die arrête l'exécution du script. Donc ce qui suit le or die ne s'exécutera que si la requête est bonne : ton if($requete) sera toujours vrai, car s'il devait être faux, on se serait arrêté avant.
[edit] gros détail au départ : <?php sur une seule ligne, pas <? sur une ligne et php plus loin
En regardant un peu plus en détail :
1 - avant d'inclure une variable dans une requête mysql, il faut échapper les caractères spéciaux avec la fonction mysql_real_escape_string, sinon tu vas avoir de gros problèmes, en particulier si les variables contiennent des apostrophes :
$nom = mysql_real_escape_string($_POST["nom"]);(idem pour les autres)
2 - le if($requete est inutile, tu peux directement mettre echo("L'insertion a été correctement effectuée"). En effet, s'il y a un problème dans la requête, le "or die" d'exécutera, et le die arrête l'exécution du script. Donc ce qui suit le or die ne s'exécutera que si la requête est bonne : ton if($requete) sera toujours vrai, car s'il devait être faux, on se serait arrêté avant.
[edit] gros détail au départ : <?php sur une seule ligne, pas <? sur une ligne et php plus loin
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
9 juil. 2012 à 16:31
9 juil. 2012 à 16:31
Alors premièrement je vous remercie beaucoup de votre aide puis je veux être claire et précis sur ma demande puisque je suis super novice. En fait j'ai crée un formulaire de deux champs c'est a dire Nom et Prenom avec a la fin le bouton envoyer.
Je vous supplie de bien vouloir me donner un bon code php de récupération des données dans ma base de données
.Merci encore
N.B: je suis héberger chez HEBERGRATUIT.COM
Je vous supplie de bien vouloir me donner un bon code php de récupération des données dans ma base de données
.Merci encore
N.B: je suis héberger chez HEBERGRATUIT.COM
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
9 juil. 2012 à 16:43
9 juil. 2012 à 16:43
Le code que tu as donné est correct aux petits détails près que je t'ai indiqués.
J'ajoute d'autres détails : si nu n'as que deux champs, il ne faut pas traiter l'adresse, le code postal, ni le téléphone évidemment. De plus, chez un hébergeur, je doute que ton nom d'utilisateur soit 'root' et ton mot de passe, vide, il faudra remettre les bons. Même chose pour le nom de ta base de données, ce n'est sûrement pas INFOS.
Si tes champs s'appellent bien 'nom' et 'prenom', le code pourrait ressembler à ça :
J'ajoute d'autres détails : si nu n'as que deux champs, il ne faut pas traiter l'adresse, le code postal, ni le téléphone évidemment. De plus, chez un hébergeur, je doute que ton nom d'utilisateur soit 'root' et ton mot de passe, vide, il faudra remettre les bons. Même chose pour le nom de ta base de données, ce n'est sûrement pas INFOS.
Si tes champs s'appellent bien 'nom' et 'prenom', le code pourrait ressembler à ça :
<?php //connexion au serveur (connection c'est de l'anglais) $cnx = mysql_connect( "localhost", "root", "" ) or die(mysql_error()); // remplacer par bonnes valeurs //sélection de la base de données: $db = mysql_select_db( "INFOS" ) or die(mysql_error()) ; // remplacer par bonne valeur //récupération des valeurs des champs: //nom: $nom =mysql_real_escape_string( $_POST["nom"]) ; //prenom: $prenom = mysql_real_escape_string( $_POST["prenom"]); //création de la requête SQL: $sql = "INSERT INTO personnes (nom, prenom) VALUES ( '$nom', '$prenom', ) " ; //exécution de la requête SQL: $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ; echo("L'insertion a été correctement effectuée") ?>
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
9 juil. 2012 à 16:59
9 juil. 2012 à 16:59
ok merci..donc ici ( "localhost", "root", "" ) qu'est ce que je mettrais?
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
9 juil. 2012 à 17:02
9 juil. 2012 à 17:02
ok ok je vois..merci je te dirais si j'ai reussi..Merci beaucoup.
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 09:03
12 juil. 2012 à 09:03
salut le père,
je ne sais pas ce qui se passe mais je crois que ca me déborde vraiment.
ton code n'affiche rien(page blanche) après avoir cliquer sur le bouton.
Alors que faire?
je ne sais pas ce qui se passe mais je crois que ca me déborde vraiment.
ton code n'affiche rien(page blanche) après avoir cliquer sur le bouton.
Alors que faire?
Utilisateur anonyme
Modifié par le père. le 12/07/2012 à 09:18
Modifié par le père. le 12/07/2012 à 09:18
Commençons par le commencement.
Oublie pour l'instant le formulaire et la base de données.
Fais un simple script qui ne contient que ça :
Est-ce que ça marche ?
Oublie pour l'instant le formulaire et la base de données.
Fais un simple script qui ne contient que ça :
<?php echo 'bonjour'; ?>
Est-ce que ça marche ?
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 09:47
12 juil. 2012 à 09:47
oui je vois bien cela mais le temps me fait défaut vraiment mais puis je t'ecrire un message privé?
Utilisateur anonyme
Modifié par le père. le 12/07/2012 à 09:57
Modifié par le père. le 12/07/2012 à 09:57
Non, pas de message privé.
Si tu veux ne pas perdre de temps, sois précis : quand tu écris oui je vois bien cela, que désigne 'cela' ? En clair, est-ce que tu veux dire que tu comprends ce que je te demande, ou que tu as vu 'bonjour' s'afficher ?
Si tu veux ne pas perdre de temps, sois précis : quand tu écris oui je vois bien cela, que désigne 'cela' ? En clair, est-ce que tu veux dire que tu comprends ce que je te demande, ou que tu as vu 'bonjour' s'afficher ?
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 10:07
12 juil. 2012 à 10:07
ok ok ça s,affiche bien, ça marche bien
alors?
alors?
Utilisateur anonyme
12 juil. 2012 à 10:11
12 juil. 2012 à 10:11
Alors redonne ton script qui devrait récupérer les données du formulaires et t'affiche une page blanche (en cachant tes mots de passe)
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 10:18
12 juil. 2012 à 10:18
voici le code qui m'affiche une page blanche:
<?php
//connexion au serveur (connection c'est de l'anglais)
$cnx = mysql_connect ('localhost','rober_12154412','mot de passe') or die(mysql_error()); // remplacer par bonnes valeurs
//sélection de la base de données:
$db = mysql_select_db (ma base de donnees) or die(mysql_error()) ; // remplacer par bonne valeur
//récupération des valeurs des champs:
//nom:
$nom =mysql_real_escape_string( $_POST["nom"]) ;
//prenom:
$prenom = mysql_real_escape_string( $_POST["prenom"]);
//création de la requête SQL:
$sql = INSERT INTO 'information'('nom', 'prenom') VALUES ($nom,$prenom]) ;
//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
echo("L'insertion a été correctement effectuée")
?>
<?php
//connexion au serveur (connection c'est de l'anglais)
$cnx = mysql_connect ('localhost','rober_12154412','mot de passe') or die(mysql_error()); // remplacer par bonnes valeurs
//sélection de la base de données:
$db = mysql_select_db (ma base de donnees) or die(mysql_error()) ; // remplacer par bonne valeur
//récupération des valeurs des champs:
//nom:
$nom =mysql_real_escape_string( $_POST["nom"]) ;
//prenom:
$prenom = mysql_real_escape_string( $_POST["prenom"]);
//création de la requête SQL:
$sql = INSERT INTO 'information'('nom', 'prenom') VALUES ($nom,$prenom]) ;
//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
echo("L'insertion a été correctement effectuée")
?>
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 10:21
12 juil. 2012 à 10:21
ma database est : rober_10969254_Infos
ma table est :information
il ya deux champs: nom et prenom
ma table est :information
il ya deux champs: nom et prenom
Utilisateur anonyme
12 juil. 2012 à 10:48
12 juil. 2012 à 10:48
Je ne vois pas comment ce code peut ne rien afficher.
1 - Déjà, à la place de 'ma base de donnees' tu devrais avoir le vrai nom de ta base de données entre apostrophes ('rober_10969254_Infos' si j'ai bien copmpris)
2 - Il n'y a rien d'autre dans le fichier qui contient ce code ?
3 - Comment s'appelle le fichier qui contient ce code ?
4 - Peux-tu montrer le code complet du formulaire qui appelle ce code ?
1 - Déjà, à la place de 'ma base de donnees' tu devrais avoir le vrai nom de ta base de données entre apostrophes ('rober_10969254_Infos' si j'ai bien copmpris)
2 - Il n'y a rien d'autre dans le fichier qui contient ce code ?
3 - Comment s'appelle le fichier qui contient ce code ?
4 - Peux-tu montrer le code complet du formulaire qui appelle ce code ?
Utilisateur anonyme
12 juil. 2012 à 10:53
12 juil. 2012 à 10:53
Remarque supplémentaire : pourquoi fais-tu n'importe quoi ? Ta requête $sql="INSERT... était bien entre " dans tes messages précédents, elle n'y est plus. PHP aurait dû te balancer de gros messages d'erreurs.
Soit ton code n'est pas du tout pris en compte, soit tu ne l'as pas recopié correctement.
Soit ton code n'est pas du tout pris en compte, soit tu ne l'as pas recopié correctement.
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 12:34
12 juil. 2012 à 12:34
regarde le petit code qui fait appel a la page "recuperant.php"
<html>
<head>
</head> <body>
<form method = "post" action="recuperant.php">
Nom <br>
<input type = "text" name = "nom"> <br>
Prenom <br>
<input type="text" name="prenom"> <br>
<input type = "submit" name = "submit" value = "envoyer">
</form>
<html>
<head>
</head> <body>
<form method = "post" action="recuperant.php">
Nom <br>
<input type = "text" name = "nom"> <br>
Prenom <br>
<input type="text" name="prenom"> <br>
<input type = "submit" name = "submit" value = "envoyer">
</form>
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 12:40
12 juil. 2012 à 12:40
ce code est dans un fichier nommé "envoi.html" et le code php se trouve dans "recuperant.php"
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 12:59
12 juil. 2012 à 12:59
oh oh..je viens de reessayer et voici que je recois ce message:
Unknown column 'lievre' in 'field list'
Et ceci apres avoir taper le nom "lievre"
Unknown column 'lievre' in 'field list'
Et ceci apres avoir taper le nom "lievre"
Utilisateur anonyme
Modifié par le père. le 12/07/2012 à 13:31
Modifié par le père. le 12/07/2012 à 13:31
Tiens, la page blanche n'est plus blanche... Qu'as-tu donc fait ? Enfin, tu n'es pas obligé de répondre à cette question.
Unknown column 'lievre' in 'field list'
Normal, tu as massacré la requête qui était pourtant correcte avant.
Tu as supprimé les ' autour de $nom et $prenom. Pour mysql, un texte qui n'est pas entouré d'apostrophes ou quotes, c'est a priori un nom de champ (column).
Unknown column 'lievre' in 'field list'
Normal, tu as massacré la requête qui était pourtant correcte avant.
$sql = "INSERT INTO information('nom', 'prenom') VALUES ('$nom','$prenom') ;
Tu as supprimé les ' autour de $nom et $prenom. Pour mysql, un texte qui n'est pas entouré d'apostrophes ou quotes, c'est a priori un nom de champ (column).
lievre24
Messages postés
35
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 avril 2013
12 juil. 2012 à 13:45
12 juil. 2012 à 13:45
wow !!! je trouve c'est bon maintenant. ca s'insère bien..je te remercie beaucoup pour tobn aide si précieuse ,sans toi je crois ca serais chaotique..en tout cas merci