connection à mysql et alimentation depuis un formulaire ?
7 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
connection à mysql et alimentation depuis un formulaire ?
Bonsoir,
j'essaie depuis un formulaire d'alimenter une base de données. Mon problème est que je n'arrive pas à l'alimenter.
le code qui en théorie devrait permettre la connection à mysql :
qu'est ce qu'il ne va pas, pourquoi ça ne s'enregistre pas dans la base
j'essaie depuis un formulaire d'alimenter une base de données. Mon problème est que je n'arrive pas à l'alimenter.
le code qui en théorie devrait permettre la connection à mysql :
- Code: Tout sélectionner
<?php
// On commence par récupérer les champs
if(isset($_POST['nom'])) $nom=$_POST['nom'];
else $nom="";
if(isset($_POST['prenom'])) $prenom=$_POST['prenom'];
else $prenom="";
// On vérifie si les champs sont vides
if(empty($nom) OR empty($prenom) )
{
echo '<font color="red">Attention, seul le champs <b>pseudo</b> peut rester vide !</font>';
}
// Aucun champ n'est vide, on peut enregistrer dans la table
else
{
// connexion à la base
$db = mysql_connect('mysql4.7', 'login', 'lelogicievad", "pswd crypté') or die('Erreur de connexion '.mysql_error());
// sélection de la base
$mysql_select_db('lelogicievad',$db) or die('Erreur de selection '.mysql_error());
// on écrit la requête sql
$sql = "INSERT INTO evad_clients(id, nom, prenom ) VALUES('','$nom','$prenom')";
// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
// on affiche le résultat pour le visiteur
echo 'Vos infos on été ajoutées.';
mysql_close(); // on ferme la connexion
}
?>
qu'est ce qu'il ne va pas, pourquoi ça ne s'enregistre pas dans la base
-

Fab le Fou - WRInaute accro

- Messages: 1511
- Inscription: Jeu Déc 02, 2004 15:20
Salut,
Dans ton code tu mets :
Si ton champ "id" a été défini comme s'incrémentant tout seul, ce qui je suppose est le cas, tu peux simplement faire :
A+, Fab
Dans ton code tu mets :
- Code: Tout sélectionner
$sql = "INSERT INTO evad_clients(id, nom, prenom ) VALUES('','$nom','$prenom')";
Si ton champ "id" a été défini comme s'incrémentant tout seul, ce qui je suppose est le cas, tu peux simplement faire :
- Code: Tout sélectionner
$sql = "INSERT INTO evad_clients(nom, prenom ) VALUES('$nom','$prenom')";
A+, Fab
merci de votre aide, j'ai finalement trouvé. Ca devait être la fatigue
il fallait juste que je retire le $ devant mysql et là "$prenom" dans la base j'avais mis un N à la fin au lieu d'un M.
- Code: Tout sélectionner
$mysql_select_db('lelogicievad',$db) or die('Erreur de selection
il fallait juste que je retire le $ devant mysql et là "$prenom" dans la base j'avais mis un N à la fin au lieu d'un M.
une autre difficulté se pose à moi, cette fois ce sont les sessions.
je mets les données en session comme ça :
et pour les récupérer :
les deux premières sont récupéré mais pour la (les) dernière(s) il m'affiche juste "Tél fixe domicile :". Si j'inverse la deuxième et la troisième "nom" et "prénom" sont toujours bon mais "tél fixe domicile" reste toujours blanc.
je mets les données en session comme ça :
- Code: Tout sélectionner
$_SESSION['nom'] = $data['nom'];
$_SESSION['prenom'] = $data['prenom'];
$_SESSION['telfd'] = $data['telfd'];
et pour les récupérer :
- Code: Tout sélectionner
echo 'Nom : ',$_SESSION['nom'],'<br />
Prénom : ',$_SESSION['prenom'],'<br />
Tél fixe domicile : ',$_SESSION['telfd'],'<br />
les deux premières sont récupéré mais pour la (les) dernière(s) il m'affiche juste "Tél fixe domicile :". Si j'inverse la deuxième et la troisième "nom" et "prénom" sont toujours bon mais "tél fixe domicile" reste toujours blanc.
Fab le Fou > je suis un fervent défenseur de cette façon de coder, qui simplifie les requêtes ET la maintenance du code.
Ne mettez dans les requêtes SQL que le strict minimum de champs, et utilisez quand c'est possible les valeurs de champs par défaut MySQL.
(edit, j'ai oublié de participer au post)
Vérifie que ton champ se nomme bien 'telfd', et qu'il est rempli !
Ne mettez dans les requêtes SQL que le strict minimum de champs, et utilisez quand c'est possible les valeurs de champs par défaut MySQL.
(edit, j'ai oublié de participer au post)
Vérifie que ton champ se nomme bien 'telfd', et qu'il est rempli !
Didier_S a écrit:Fab le Fou > je suis un fervent défenseur de cette façon de coder, qui simplifie les requêtes ET la maintenance du code.
Ne mettez dans les requêtes SQL que le strict minimum de champs, et utilisez quand c'est possible les valeurs de champs par défaut MySQL.
(edit, j'ai oublié de participer au post)
Vérifie que ton champ se nomme bien 'telfd', et qu'il est rempli !
J'ai suivi votre recommandation concernant ID
Pour le deuxième sujet après avoir lu des dizaines de pages sur les sessions j'ai "découvert" qu'il fallait mettre les URL en absolu et non pas en relatif. Mais je ne comprend pas pourquoi les champs Nom et Prénom passaient toujours.
Donc voila pour le moment tout se passe bien, on verra bien la prochaine étape
7 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Gestion des langues et des sessions en PHP / MySQL
- Passage à l'heure d'été/hiver sur un forum phpBB
- GoogleStats : analyse temps réel des visites de Google sur votre site
- Sortie officielle de GoogleStats v2.0 !
- AdSense Tracking : statistiques détaillées sur les clics AdSense
- Le WRInaute du moment
- Stratégies financières sur l'évolution de l'architecture Google
- Interview Wikio : transcript du chat WebRankInfo
- Googlebot, le robot d'indexation de Google
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités




le forum