Select multiple dans un insert
Fermé
Imelda24
-
23 janv. 2017 à 17:40
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 26 janv. 2017 à 14:52
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 26 janv. 2017 à 14:52
A voir également:
- Select multiple dans un insert
- Touche insert - Guide
- Liste déroulante choix multiple excel - Guide
- Ecran multiple pc - Guide
- Disk boot failure insert system disk and press enter - Guide
- Windows presse papier multiple - Guide
6 réponses
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
23 janv. 2017 à 20:12
23 janv. 2017 à 20:12
Bonjour,
Tu dois pouvoir faire un truc du genre :
Tu dois pouvoir faire un truc du genre :
INSERT INTO Mainte SELECT ?,?,id_materiels FROM Materiels WHERE Types_Materiels='Ordinateurs'))
je comprends pas trop bien .
y'a 3 type de materiel 1-ordi , 2-imp,3-scr
dans la table mainte si le champs materiel contient ordi je dois prendre l'id de l'ordi ds la table materiel pour le mettre dans le champs id_materiel dans Mainte, mais c = a imp je prends l'id imp sinon scr. malheureusement y'a pas de boucle if voila mon plus grand prob.
y'a 3 type de materiel 1-ordi , 2-imp,3-scr
dans la table mainte si le champs materiel contient ordi je dois prendre l'id de l'ordi ds la table materiel pour le mettre dans le champs id_materiel dans Mainte, mais c = a imp je prends l'id imp sinon scr. malheureusement y'a pas de boucle if voila mon plus grand prob.
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
23 janv. 2017 à 21:51
23 janv. 2017 à 21:51
Montre nous un dump de tes tables et dis nous ce que tu souhaites obtenir exactement (en te basant sur des donnees concretes de ton dump)
yg_be
Messages postés
23405
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
20 décembre 2024
Ambassadeur
1 557
23 janv. 2017 à 22:29
23 janv. 2017 à 22:29
bonsoir, je pense que tu peux faire ainsi:
Tu ne nous montres pas le code avant et après l'insertion. Les trois "?" sont à remplacer, le premier par la valeur que tu veux pour Dep, le deuxième et le troisième, deux fois par la valeur que tu veux pour Materiel.
Si j'étais toi, je ne mettrais pas le champ Materiel dans la table Mainte, parce qu'il est déjà présent dans la table Materiels, et que Materiels_id suffit pour lier les deux tables.
$sql= "INSERT INTO Mainte ( Dep, Materiel, Materiels_id) SELECT ?,?,id_materiels FROM Materiels WHERE Types_Materiels=?";
Tu ne nous montres pas le code avant et après l'insertion. Les trois "?" sont à remplacer, le premier par la valeur que tu veux pour Dep, le deuxième et le troisième, deux fois par la valeur que tu veux pour Materiel.
Si j'étais toi, je ne mettrais pas le champ Materiel dans la table Mainte, parce qu'il est déjà présent dans la table Materiels, et que Materiels_id suffit pour lier les deux tables.
mais comment faire pour mettre l'id de chacun a sa place respective
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
24 janv. 2017 à 08:08
24 janv. 2017 à 08:08
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour,
je laisse l'insertion pour un instant. mais g un autre probleme ca concerne la connection ceci est mon code:
quand je rentre l'username et le pass je reste toujours dans la meme page la redirection n'est pas faite. toute aide est la bienvenue.
Cordialement,
Imelda
je laisse l'insertion pour un instant. mais g un autre probleme ca concerne la connection ceci est mon code:
<?php require("connect.php"); if(isset($_POST['username'])AND isset($_POST['Motd_passe'])){ $username=htmlspecialchars($_POST['username']); $Motd_passe=htmlspecialchars($_POST['Motd_passe']); $requete="SELECT * FROM administrateur"; $query=sqlsrv_query($conn,$requete); while($donnees=sqlsrv_fetch_array($query)) { if($donnees['username']==$username && $donnees['Motd_passe']==$Motd_passe) { session_start(); $_SESSION['id']=$donnees['id']; $_SESSION['admin']=$username; header("Location:../Base/ordinateur/production/index_o.php"); } } sqlsrv_close($query); } ?> <!DOCTYPE html> <html lang="en"> <head> <body> <div class="right_col" role="main" > <form method="POST" action=""> <fieldset> <div style="margin:20%";> <table > <tr> <td>Login: </td> <td> <input type="text" name="username" required> </td> </tr> <tr> <td> Mot de Passe: </td> <td><input type="password" name="Motd_passe" required></td> </tr> <tr><td> <button type="submit" Value="Connection">Connection</button> </div> </td></tr> </table> </fieldset> </form> </div> </body> </html>
quand je rentre l'username et le pass je reste toujours dans la meme page la redirection n'est pas faite. toute aide est la bienvenue.
Cordialement,
Imelda
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
24 janv. 2017 à 16:52
24 janv. 2017 à 16:52
Bonjour,
Merci d'ouvrir une discussion spécifique pour cette nouvelle question .....
Cela permet de mieux s'y retrouver dans le forum .... et de ne pas se mélanger avec ta question initiale.
Merci d'ouvrir une discussion spécifique pour cette nouvelle question .....
Cela permet de mieux s'y retrouver dans le forum .... et de ne pas se mélanger avec ta question initiale.
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 718
>
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
Modifié par jordane45 le 24/01/2017 à 16:56
Modifié par jordane45 le 24/01/2017 à 16:56
De plus ... cette nouvelle question concerne du code PHP et non une REQUETE de mysql server....
Il te faut donc la poster dans le forum PHP
Il te faut donc la poster dans le forum PHP
Imelda24
>
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
24 janv. 2017 à 17:08
24 janv. 2017 à 17:08
d'accord
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
Modifié par Reivax962 le 26/01/2017 à 14:53
Modifié par Reivax962 le 26/01/2017 à 14:53
Bonjour,
Pardon mais j'ai l'impression d'avoir raté quelque chose au vu des réponses...
Ton id_materiels que tu veux insérer, il ne faut surtout pas le requêter lors de l'insertion ! Il t'est donné par le <select> dans lequel l'utilisateur a choisi son type de materiel...
Du coup ta requête d'insertion devient tout simplement
Où le troisième "?" sera, comme le Dep et le Materiel, issu du formulaire $_POST['Materiels_id'];
Xavier
Pardon mais j'ai l'impression d'avoir raté quelque chose au vu des réponses...
Ton id_materiels que tu veux insérer, il ne faut surtout pas le requêter lors de l'insertion ! Il t'est donné par le <select> dans lequel l'utilisateur a choisi son type de materiel...
<select name="Materiels_id" size="1"> <option value="0"> </option> <?php while ($donnees = sqlsrv_fetch_array($query)){ ?> <option value="<?php echo $donnees ['id_materiels']; ?>"><?php echo $donnees ['Types_materiels']; ?></option>
Du coup ta requête d'insertion devient tout simplement
$sql= "INSERT INTO Mainte( Dep, Materiel, Materiels_id) VALUES (?, ?, ?)";
Où le troisième "?" sera, comme le Dep et le Materiel, issu du formulaire $_POST['Materiels_id'];
Xavier