Problemes insertion avec formulaire dans mysql

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

max6
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 168
Inscription: Dim Mai 18, 2003 1:37

Problemes insertion avec formulaire dans mysql

Message le Jeu Oct 21, 2004 10:32

Bonjour a tous .


Voici mon probleme :

J'ai 18 tables a alimenter dans une base mysql avec un formulaire .
Je n'ai pas besoin d'aide pour les 18 tables mais juste pour 3 d'entre elles .

J'ai une table "tbl_acteurs" comme ceci :
- id_acteurs
- nom_acteurs

Une autre "tbl_fiche" :
- id_fiche
- ------
- ------

Et la troisieme "tbl_acteurs_fiche comme ceci :
- id_acteurs_fiche
- id_acteurs
- id_fiche


Pour une fiche il y'a possibilité d'avoir jusque 6 acteurs , j'ai donc ceci dans le formulaire :

<input type=text name=nom_acteurs size=20 value=nom_acteurs>
<input type=text name=nom_acteurs size=20 value=nom_acteurs>
<input type=text name=nom_acteurs size=20 value=nom_acteurs>
<input type=text name=nom_acteurs size=20 value=nom_acteurs>
<input type=text name=nom_acteurs size=20 value=nom_acteurs>
<input type=text name=nom_acteurs size=20 value=nom_acteurs>

Et ceci dans le script d'insertion :

$sql = "INSERT INTO tbl_acteurs(id_acteurs, nom_acteurs) VALUES('','$nom_acteurs')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$id_acteurs = mysql_insert_id();
$sql = "INSERT INTO tbl_acteurs_fiche(id_acteurs_fiche, id_acteurs, id_fiche) VALUES('','$id_acteurs','$id_fiche')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

A savoir que $id_fiche est récupérer plus haut .


Le probleme est que quand je valide le formulaire et que je vais vérifier dans myadmin , les champs acteurs sont remplis mais seulement par la valeur du dernier input nam=nom_acteurs .

Par ex : je remplis les 6 champs nom_acteurs du formulaire par respectivement a , b c , d , e , f et bien le formulaire va enregistrer 6 champs dans la table tbl_acteurs mais les 6 champs nom_acteurs auront la valuer f , il ne prend donc que le dernier enregisrement du formulaire .

Il faut que quand je rentre 6 acteurs différents , il crée 6 enregistrements dans la table tbl_acteurs avec la bonne valuer pour chaque enregistrements (tbl_acteurs.id1=a , tbl_acteurs.id2=b , etc ....)

J'ai fais plein de test de différentes manères mais ca ne veut pas .
Si quelqu'un a déja résolu ce probleme , je le remerci par avance de m'aider .

Max


e-kiwi
Modérateur
Modérateur
 
Messages: 13854
Inscription: Mar Déc 23, 2003 9:04

Message le Jeu Oct 21, 2004 10:41

ouh la, t as 6 champs differents qui ont le meme nom !!
faut les appeler acteur1, acteur2, .... et faire soit 6 requetes, soit une requete sur une table qui aurait 6 champs (acteur1, acteur2, ...)

max6
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 168
Inscription: Dim Mai 18, 2003 1:37

Message le Jeu Oct 21, 2004 10:50

Oui le probleme vient de la je sais bien mais renommer les champs ne peut pas fonctionner puisque il faut que les champq "name" du formulaire soient identiques aux champs de mes tables ??? non ???

wiwi
WRInaute discret
WRInaute discret
 
Messages: 54
Inscription: Sam Juin 26, 2004 12:59

Message le Jeu Oct 21, 2004 12:29

max6 a écrit:Oui le probleme vient de la je sais bien mais renommer les champs ne peut pas fonctionner puisque il faut que les champq "name" du formulaire soient identiques aux champs de mes tables ??? non ???


non :roll: ca n'a rien a voir.

6 champs avec 6 noms differents et 6 inserts.

enfin, insert que si le champs n'est pas vide :wink:

max6
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 168
Inscription: Dim Mai 18, 2003 1:37

Message le Jeu Oct 21, 2004 16:17

Merci ca marche super !

Par contre ca m'inser les 6 champs dans ma base meme si ils sont pas tous remplis .
Quelle est la syntaxe pour éviter d'insérer des champs vides dans la table ?


e-kiwi
Modérateur
Modérateur
 
Messages: 13854
Inscription: Mar Déc 23, 2003 9:04

Message le Jeu Oct 21, 2004 16:36

ben if :-)

if ($nom_acteurs_x)
{
$sql = "INSERT INTO tbl_acteurs(id_acteurs, nom_acteurs) VALUES('','$nom_acteurs_x')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
}


Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

  • Analyse de similarité textuelle
    Cet outil vous permet de calculer la similarité entre 2 pages web. L'algorithme utilisé repose sur l'analyse des occurrences des mots (mais pas sur leur positionnement dans les pages). Google utilise cette notion à certains endroits dans son algorithme, mais de façon bien plus évoluée que ce petit outil... Avoir des pages trop similaires peut entraîner des problèmes d'indexation... Cet outil vous permettra peut-être de résoudre certains problèmes de contenus dupliqués.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités