Formation Google AnalyticsSavez-vous bien utiliser les outils de mesure d'audience ?
Effectuez-vous un calcul de ROI (Retour sur investissement) pour savoir comment améliorer vos campagnes emarketing ?
Savez-vous utiliser les bons outils pour booster votre taux de transformation ?
La formation Web Analytics de Ranking Metrics, présentée par un expert reconnu officiellement par Google Analytics, vous apportera les réponses à toutes vos questions !
===> Informations et inscriptions.

Controle doublons et champs existants insertion mysql

Poster un nouveau sujet Imprimer cette discussion    Forum -> Administration d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
max6
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 18 Mai 2003
Messages: 168

URL permanente de ce messagePosté le : Sam Nov 06, 2004 21:44    Sujet du message: Controle doublons et champs existants insertion mysql

Bonjour

Voici mon probleme :

J'ai 3 tables :

tbl_acteurs , tbl_acteurs_fiche, tbl_fiche


Je veux par le biais d'un formulaire inserer des données dans ces trois tables , jusque la rien de compliqué si ce n'est que je veux controler les champs et les doublons en meme temps !

J'ai ceci dans mon fichier insertion.php :



A savoir que j'ai 6 champs acteurs dans mon formulaire mais il se peut qu'il ne soit pas tous rempli et qu'il existe déja dans la table acteurs ....


Je récupére dabbord lID fiche de l'insert précendent :
$id_fiche = mysql_insert_id();



je vérifier si le champs est rempli
if ($nom_acteurs1)
{


je vérifie si l'acteur existe déja dans la table acteurs
$sql = "SELECT id_acteurs FROM tbl_acteurs WHERE nom_acteurs='$nom_acteurs1'";
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$row= mysql_fetch_array($req);

$id_acteurs = htmlentities(StripSlashes($row["id_acteurs"]));

si il existe : j'ajoute juste son ID dans la table acteurs_fiche
if($row==$nom_acteurs1)
{
$sql = "insert into tbl_acteurs_fiche(id_acteurs_fiche, id_acteurs, id_fiche) values(\"\",\"$id_acteurs\",\"$id_fiche\")";
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
}

Sinon je crée un enregistrement dans la table acteur , je recupere lid et je l'insere dans tbl_acteurs_fiche
else
{
$sql = "insert into tbl_acteurs(id_acteurs, nom_acteurs) values(\"\",\"$nom_acteurs1\")";
$req = 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\")";
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
}

}





if ($nom_acteurs2)
{

$sql = "SELECT id_acteurs FROM tbl_acteurs WHERE nom_acteurs='$nom_acteurs2'";
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$row= mysql_fetch_array($req);

$id_acteurs = htmlentities(StripSlashes($row["id_acteurs"]));



if($row==$nom_acteurs2)
{
$sql = "insert into tbl_acteurs_fiche(id_acteurs_fiche, id_acteurs, id_fiche) values(\"\",\"$id_acteurs\",\"$id_fiche\")";
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
}
else
{
$sql = "insert into tbl_acteurs(id_acteurs, nom_acteurs) values(\"\",\"$nom_acteurs2\")";
$req = 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\")";
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
}

}


.................
...............
...............
...........


Bien "évidemment ca fonctionne pas comme je veux !

Si quelqu'un peut m'aider ...
Merci par avance
 
max6 Visiter le site web du posteur
jeroen
WRInaute accro
WRInaute accro

Inscrit le: 30 Aoû 2002
Messages: 2289

URL permanente de ce messagePosté le : Dim Nov 07, 2004 0:12    Sujet du message: Controle doublons et champs existants insertion mysql

Impossible de se plonger dans ton code...
Morcèle le et identifie plus précisement la partie qui bug...

Au début j'ai vu ça :

Citation:
Je récupére dabbord lID fiche de l'insert précendent :
$id_fiche = mysql_insert_id();


Il me semble que le mysql_insert_id() n'est disponible qu'apres un insert..
ici il doit retourner false...
 
jeroen
cr500
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 13 Oct 2004
Messages: 230

URL permanente de ce messagePosté le : Dim Nov 07, 2004 11:38    Sujet du message: Controle doublons et champs existants insertion mysql

moi je te conseil pour savori si la variable existe dutilisé

isset()

Code:
if(isset($variable))



attention si la variable issu d un formulaire


Code:
  $_REQUEST[variable]




  (= $variable )
 
cr500
max6
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 18 Mai 2003
Messages: 168

URL permanente de ce messagePosté le : Dim Nov 07, 2004 16:26    Sujet du message: Controle doublons et champs existants insertion mysql

Ok pour la vérification du champs mais le probleme vient surtout du controle de l'existence de l'enregistrement dans ma table mysql , d'ou le select du début !

Le insert du début signifie qu'on le récupere apres un enregistrement que je n'ai volontairement pas mis dans le code puisque ca ne sert a rien dans le cas présent


Il faut juste combiner le controle du champ rempli et l'existence de l'enregisrement et procéder aux actions necessaires selon le résultat du select .


Max
 
max6 Visiter le site web du posteur
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Administration d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort