Signaler

Insérer plusieurs tuples ayant le même id en php [Résolu]

Posez votre question nanynaz5 10Messages postés dimanche 5 mars 2017Date d'inscription 8 avril 2017 Dernière intervention - Dernière réponse le 22 mars 2017 à 13:59 par jordane45
Je veux insérer plusieurs tuples ayant le même id en php j'ai essayé un code mais l'insertion n'est pas effectué svp aidez moi
<?php

$dsn="sqlserver1";
$username ="sa";
$password="pi";
$sqlconnect =odbc_connect($dsn,$username,$password)or die (odbc_error());
odbc_exec($sqlconnect,"use UsthbOreintation");

$rs=odbc_exec($sqlconnect,"select count(ouvert) as ouvert
 from OUVERTURE_PAR_LICENCE where liccode='903' and ouvert='oui'");

$result=odbc_exec($sqlconnect,"select designation from OUVERTURE_PAR_LICENCE ,MASTER where OUVERTURE_PAR_LICENCE.CODEMASTER=master.CODEMASTER and liccode='903' and ouvert='oui'");
$i=1;
$count=odbc_fetch_object($rs);
 $coun=$count->ouvert;
?>





<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>jQuery UI Sortable - Default functionality</title>
  <link rel="stylesheet" href="jquery-ui.css">
  <link rel="stylesheet" href="/resources/demos/style.css">
  <style>
  #sortable { list-style-type: none; margin: 0; padding: 0; width: 60%; }
  #sortable li { margin: 0 3px 3px 3px; padding: 0.4em; padding-left: 1.5em; font-size: 1.4em; height: 18px; }
  #sortable li span { position: absolute; margin-left: -1.3em; }
  .input{color:rgb(255,255,255); border-color: rgb(212,63,58);
    width:60px;padding-left: :200px; height: 20px; padding-right: 600px;

  }
  </style>
  <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
  <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
  <script>
  $( function() {
    $( "#sortable" ).sortable();
    $( "#sortable" ).disableSelection();
  } );
  </script>
</head>
<body>
 <form>

   <div class="input">

      <input type="text" name="mat" id="mat" placeholder="entrer le matricule " class="form-control-name-id"/>
    </div>
   <p> </p>
   <br>
<ul id="sortable">
 <?php while($i<=$coun && $ET=odbc_fetch_row($result)){?>




  <li class="ui-state-default"><span class="ui-icon ui-icon-arrowthick-2-n-s"></span> <?php  $codemaster=odbc_result($result,"designation");

             echo "$codemaster<br>"; ?></li>
 <?php $i++ ;}?>
</ul>
  <input type="submit" class="btn btn-info" value="valider">
</form>
 <?php 

if (isset($_POST["mat"]))
  for($j=0;$j<$coun;$j++){

  $query ="insert into VOEUX (MAT,CODEMASTER ) values ('".$_POST["mat"]."','".$_POST["name"][$j]."')";
$p=odbc_exec($sqlconnect,$query);
if(!$p){
  die (odbc_error());
}

}

 ?>
</body>
</html>

EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
Utile
+0
plus moins
Bonjour ( Si si ... on COMMENCE par ça !!!! )

Quel est le code généré de ton formulaire html ( clic droit dans ton navigateur, afficher le code source ) ?

Que donnes un
print_r($_POST);


Y-a t'il un message d'erreur ?

Donnez votre avis
Utile
+0
plus moins
Print_r($_POST);
Ça donne rien






<!doctype html>
<html lang="en">
<head>

<form>

<div class="input">

<input type="text" name="mat" id="mat" placeholder="entrer le matricule " class="form-control-name-id"/>
</div>
<p> </p>
<br>
<ul id="sortable">
<?php while($i<=$coun && $ET=odbc_fetch_row($result)){?>




<li class="ui-state-default"><span class="ui-icon ui-icon-arrowthick-2-n-s"></span> <?php $codemaster=odbc_result($result,"designation");

echo "$codemaster<br>"; ?></li>
<?php $i++ ;}?>
</ul>

</body>
</html>



C le code du formulaire la list ul c'est du jquery elle est dynamique
jordane45 18393Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 10 octobre 2017 Dernière intervention - 21 mars 2017 à 19:29
je ne veux pas le code source php ... je veux le code GENERE ...
Tu affiches la page sur ton navigateur .. puis tu fais un clic-droit : "afficher le code source" ou "code source de la page" (ça dépend du navigateur)

Sachant que seuls les éléments de type INPUT / SELECT / TEXTAREA .. sont remontés dans un SUBMIT .
Un LI tout seul n'est pas récupéré !!!
Répondre
hidy0000 14Messages postés lundi 6 mars 2017Date d'inscription 24 mai 2017 Dernière intervention - 22 mars 2017 à 13:33
bonsoir jordane

on veut afficher des spécialités qui sont dynamique des fois 3 ou 5 etc... après l'utilisateur doit les ordonner et on doit insérer ses choix dans la base de donner ,chaque choix avec son numéro d'ordre voila!

print_r($_POST); elle affiche :
array()

voici le cdoe généré
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>jQuery UI Sortable - Default functionality</title>
 
  <link rel="stylesheet" href="jquery-ui.css">
  <link rel="stylesheet" href="/resources/demos/style.css">
  <style>
  #sortable { list-style-type: none; margin: 0; padding: 0; width: 60%; }
  #sortable li { margin: 0 3px 3px 3px; padding: 0.4em; padding-left: 1.5em; font-size: 1.4em; height: 18px; }
  #sortable li span { position: absolute; margin-left: -1.3em; }
  .input{color:rgb(255,255,255); border-color: rgb(212,63,58);
    width:60px;padding-left: :200px; height: 20px; padding-right: 600px;

  }
  </style>

  <script src="https://code.jquery.com/jquery-1.12.4.js"></script>
  <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
  <script>

  $( function() {
    $( "#sortable" ).sortable();
    $( "#sortable" ).disableSelection();
  } );
  </script>
  
</head>
<body>

 <form>

   <div class="input">

      <input type="text" name="mat" id="mat" placeholder="entrer le matricule " class="form-control-name-id"/>
    </div>
   <p> </p>
   <br>
<ul id="sortable">
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.S2I<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.IL<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.RSD<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.SSI<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.ARCH.PARAL.CAL.INT<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.MATH.INF.DEC<br>               
           </li>
     </ul>
Array
(
)

  
  <input type="submit" class="btn btn-info" value="valider">
</form>

 done !</body>
</html>


merci
Répondre
jordane45 18393Messages postés mercredi 22 octobre 2003Date d'inscription ModérateurStatut 10 octobre 2017 Dernière intervention - 22 mars 2017 à 13:59
Donc c'est cette partie là que tu veux récupérer :
<ul id="sortable">
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.S2I<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.IL<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.RSD<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.SSI<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.ARCH.PARAL.CAL.INT<br>               
           </li>
     
           <li class="ui-state-default">
               <span class="ui-icon ui-icon-arrowthick-2-n-s"></span>
                MAS.MATH.INF.DEC<br>               
           </li>
     </ul>

Sauf que comme je te l'ai indiqué précédement ... ce ne sont pas des input .. ni des select .. ni des textarea.
Ils ne sont donc pas récupérés via le SUBMIT de ton formulaire.


Pour les récupérer, il faudrait, en javascript, récupérer ces éléments et les mettre dans un (ou plusieurs.. à voir...) INPUT de type "hidden".
Ainsi tu pourrais les retrouver dans ton SUBMIT.


par exemple:
Côté HTML ajouté ceci dans ton FORM
<input name="new_order" value="" type="hidden" />


Côté Javascript :
$("#sortable").sortable({
    stop: function(event, ui) {
        var data = "";

        $("#sortable li").each(function(i, el){
            var p = $(el).text().toLowerCase().replace(" ", "_");
            data += p+"="+$(el).index()+",";
        });
        $("form > [name='new_order']").val(data.slice(0, -1));
    }
});
Répondre
Donnez votre avis

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !