[RESOLU] Insérer une clé étrangère dans une nouvelle entrée

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Insérer une clé étrangère dans une nouvelle entrée

Re: Insérer une clé étrangère dans une nouvelle entrée

par sebz » 16 févr. 2015, 22:35

J'ai fait plusieurs essai à l'instant, rien de très fructueux mais j'ai tout de même l'impression de toucher au but!

J'ai donc fait comme conseillé toutefois ma requête récupère le contenu de ma variable $idusers comme une chaîne de caractère et non le résultat de ma requête ce qui me génère l'erreur suivante: Erreur SQL !INSERT INTO style VALUES("", "hip", "SELECT id_users FROM users WHERE login=\"seb\"",1,1,1,1,1)

Et mon code:
$sql = 'SELECT * FROM style WHERE nom="'.mysql_real_escape_string($_POST['nomstyle']).'"';
        $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
        $data = mysql_fetch_array($req);

        $idusers = 'SELECT id_users FROM users WHERE login="'.$log.'"'; // la variable en question

        if ($data[0] == 0) {
            $sql = 'INSERT INTO style VALUES("", "'.mysql_real_escape_string($_POST['nomstyle']).'", "'.mysql_real_escape_string($idusers).'",1,1,1,1,1)';
            mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

            exit();
        }
Que devrais-je changer? #-o

Re: Insérer une clé étrangère dans une nouvelle entrée

par sebz » 16 févr. 2015, 22:08

Ok, merci beaucoup pour cette réponse rapide! :)

Je vais essayer 2-3 choses en partant de cette idée du coup.

Re: Insérer une clé étrangère dans une nouvelle entrée

par tof73 » 16 févr. 2015, 21:56

il faut bien mettre l'id_user dans une variable et construire la requete avec cette variable, comme pour le second champ de la requete insert.

Insérer une clé étrangère dans une nouvelle entrée

par sebz » 16 févr. 2015, 21:53

Bonjour,

Je requière votre aide pour un problème auquel mon cher ami Google n'arrive pas à m'aiguiller vers un lien susceptible de m'aider. Peut-être est-ce du PHP/MySQL avancé mais dans tout les cas je suis encore un débutant :)

Mon problème: J'aimerais insérer la valeur de la clé étrangère de l'utilisateur actif et la valeur de certains boutons de ma page dans un enregistrement d'une autre table. Voici mon code, se serait surement plus parlant:
$sql = 'INSERT INTO style VALUES("", "'.mysql_real_escape_string($_POST['nomstyle']).'", id_users,id_chaussure,id_chapeau,id_ceinture,id_tshirt,id_pantalon)';
Il faudrait donc que quand j'ajoute id_users, par exemple, ce dernier insère l'id_users (clé étrangère) de l'utilisateur actif (qui figure dans la table users). Dois-je stocker les valeurs des clés étrangères dans une variable?

Je suis à cours d'idée et c'est pour un projet scolaire pour lequelle il ne me reste plus beaucoup de temps malheureusement #-o

Merci d'avance pour votre aide et si vous avez besoin de précision n'hésiter pas à me le faire savoir :D