recupérer des données
Hors ligneMaryg07 Le 26/07/2006 à 18:46 Profil de Maryg07 Configuration de Maryg07

Bonjour

J'ai crée un formulaire où apparait l'id, le pseudo et l'email de mon membre (ses infos viennent de la table membres). POUR CELA PAS DE PROBLEME ET CA FONCTIONNE.
Le formulaire une fois remplis vas dans ma table infosmembre.
Après avoir vérifié ma table, je me suis apperçu que LE PSEUDO, ID et l'EMAIL ne s'étaient par rajouté.
Ma question est donc celle-ci :
Comment récuperer ses informations pour les intégrer à la table infos ? Elles existe bien puisque je les vois sur le formulaire.
Dans mon script validant les infos j'ai écrit ceci :
//récupération de l'identifiant de la personne:
$id_members = $_POST["id_membre"];
$pseudo = $_POST["pseudo"];
$mail = $_POST["mail"];
//création de la requête SQL:
$sql = "INSERT INTO infosmembre (id_membre, pseudo, mail) VALUES ('$id_membre','$pseudo','$mail')";

(ceci ne représente que la partie du code inséré, le reste étant des infos du formulaire).

Enfin, j'ai aussi une autre question :
Comment fait t-on le lien entre les tables.
Par exemple :
Une table de membre avec idmembre, pseudo, email, ...
Une autre table infosplus avec idmembre, pseudo, email, ...
si l'idmembre de la table membre est autoincremente, l'idmembre de la table infosplus doit elle elle etre non incrémenté ?

Je vous remercie de votre aide.

Bics

Mary
--
Mary07
Hors ligneJekkil Le 26/07/2006 à 19:56 Profil de Jekkil Configuration de Jekkil

Salut Mary07,

Il se peut que l'erreur vienne du nom de ta variable id_membre... celui que tu utilises pour insérer dans ta table n'est pas le même que celui que tu as créé 4 lignes au-dessus.

//récupération de l'identifiant de la personne:
$id_members = $_POST["id_membre"];
$pseudo = $_POST["pseudo"];
$mail = $_POST["mail"];
//création de la requête SQL:
$sql = "INSERT INTO infosmembre (id_membre, pseudo, mail) VALUES ('$id_membre','$pseudo','$mail')";


Pour des liens entre les différentes tables, je pense que le mieux est d'utiliser des requêtes avec l'option WHERE.
Hors ligneMaryg07 Le 26/07/2006 à 22:16 Profil de Maryg07 Configuration de Maryg07

Bonjour,

Je viens de corriger id_membre mais cela ne marche pas.
Je viens de faire une nouvelle simulation mais l'id_membre, le pseudo et l'email ne viennent pas se rajouter dans ma base.

SOS - SOS - que faire, c'est vraiment despespérant de ne pas trouver pourquoi.

//récupération de l'identifiant de la personne:
$id_membre = $_POST["id_membre"];
$pseudo = $_POST["pseudo"];
$mail = $_POST["mail"];
//création de la requête SQL:
$sql = "INSERT INTO infosmembre (id_membre, pseudo, mail) VALUES ('$id_membre','$pseudo','$mail')";

Pourquoi affiché sur mon formulaire, cela ne vient pas dans ma table ! comprend pas.
Mais ce qui me tarode en plus, c'est que ses élements devraient automatiquement s'incrémenté depuis ma première table.
Peut-être devrais laisser vide ?
Quelqu'un peut-il m'aider ?

Merci de vos lumières.

Bics
Mary
--
Mary07
Hors ligneJekkil Le 26/07/2006 à 23:21 Profil de Jekkil Configuration de Jekkil

Est-ce que tu as bien cette ligne de code qui vient s'ajouter juste après ?

mysql_query("$sql");


Sinon, je relisais ton premier post, au niveau de ta structure de table, est-ce vraiment nécessaire d'enregistrer 'pseudo' et 'email' dans chacune des tables ? Cela créé des redondances inutiles...
Hors ligneMaryg07 Le 26/07/2006 à 23:29 Profil de Maryg07 Configuration de Maryg07

Bonsoir,

Oui, j'ai bien écrit :
mysql_query("$sql");

et ce n'est pas de la redondance de reprendre ses infos mais c'est pour une raison bien précise et c'est même indispensable.

Cela n'apporte pas la réponse.

Bonsoir

Mary
--
Mary07
Hors ligneJekkil Le 26/07/2006 à 23:42 Profil de Jekkil Configuration de Jekkil

Je te propose d'essayer en ajoutant des ` autour du nom de table et de tes champs
(ça a déjà marché pour moi)

<?php
//récupération de l'identifiant de la personne:
$id_membre = $_POST["id_membre"];
$pseudo = $_POST["pseudo"];
$mail = $_POST["mail"];
//création de la requête SQL:
$sql = "INSERT INTO `infosmembre` (`id_membre`, `pseudo`, `mail`) VALUES ('$id_membre','$pseudo','$mail')";
?>


Encore une hypothèse : dans ton premier post, tu parles du champ "email" et dans ce morceau de code, c'est "mail"...

Si cela ne marche toujours pas, je désolé de ne pas pouvoir faire plus pour toi.

Jekkil.
Hors ligneMaryg07 Le 26/07/2006 à 23:58 Profil de Maryg07 Configuration de Maryg07

Bonsoir


Ce n'est toujours pas bon.
J'ai essayé autre chose mais là aussi cela ne marche pas.
En fait, il faudrait que je puisse récupérer le pseudo, le login et le mail de la table du membre et qui s'affichent parfaitement sur le formulaire et que ses derniers aillent s'inscrire dans la nouvelle table infos du membre.
C'est pourtant simple à comprendre et je vois que c'est tres complexe à faire.

Il doit bien y avoir un truc quand même !!!!

Bon, si tu ne peux pas m'aider je comprendrais.

Bonsoir

Mary
--
Mary07
Hors ligneJekkil Le 27/07/2006 à 01:27 Profil de Jekkil Configuration de Jekkil

Salut Mary,

Ceci est ma dernière cartouche. C'est un extrait d'une page que j'ai codée (et qui fonctionne). Comme toi, je suis allé chercher des données dans une table, que j'ai ensuite récupérées par un POST, et j'ai ensuite fait un INSERT INTO. Je les affiche également dans un formulaire, mais APRES avoir fait l'INSERT.


<?php
     $table
=($_POST['table']);
     $numero=($_POST['numero']);
     $titre=addslashes(($_POST['titre'])); // addslashes pour neutraliser certains caractères comme les ' ou "
     $duree=($_POST['duree']);
     $resume=addslashes(($_POST['resume']));
     $taille=($_POST['taille']);
     $date=($_POST['date_ajout']);
     
     mysql_query
("INSERT INTO `$table` ( `numero_episode` , `titre` , `duree` , `resume` , `taille` , `date_ajout` ) VALUES ($numero, '$titre', '$duree', '$resume', '$taille', '$date')");

// réaffichage des $_POST dans un formulaire
?>


Je ne peux vraiment rien faire de plus pour toi.

En espérant que tu trouves la solution par analogies avec mon morceau de code, ou que quelqu'un de plus performant puisse t'aider...

Bonne nuit.
Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels