IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Problème instruction select/insertion Tableau


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 8
    Points
    8
    Par défaut Problème instruction select/insertion Tableau
    Bonjour à tous.

    Voilà ça fait maintenant plusieurs heures que j'essaie d'écrire un code php afin de renvoyer une table ayant pour tuples ce que l'utilisateur à choisi au préalable.

    Je m'explique :

    J'ai une table : "portable" avec comme champs : idPortable marque capaciteRam et SE.

    Pour l'instant ce que j'ai réussi à faire c'est que : l'utilisateur puisse cocher les champs qu'il veut, et dans un menu déroulant à coté les valeurs de ces champs.

    http://imageshack.us/photo/my-images...stitrejkv.jpg/

    j'aimerais afficher sa requête dans un tableau sur une autre page à l'issu d'un clique sur un bouton.

    Voici ou j'en suis : Ici l'affichage pour l'utilisateur pour son choix qu'il veut faire.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    		<?php
    			include ("./../Connexion/connexion.php");
    			include ("./../Connexion/fonctions.php");
    			$ordresql="select idPortable From portable";
    			$ordresql2="select distinct Marque From portable";
    			$ordresql3="select distinct capaciteRam from portable";
    			$ordresql4="select distinct se from portable";
    			$requete=mysql_query($ordresql,$connexion);
    			$requete2=mysql_query($ordresql2,$connexion);
    			$requete3=mysql_query($ordresql3,$connexion);
    			$requete4=mysql_query($ordresql4,$connexion);
    			echo "<tr><td>idPortable</td>";
    			echo "<td><input type=\"checkbox\" value=\"idPortable\" name=\"1\"></input><br/></td>";
    			echo "<td><select name=\"Liste1\"><option value=\"peu\">Peu Importe</option>";
    			while($ligne=mysql_fetch_assoc($requete))
    				{ echo  "<option value=\"". ($ligne['idPortable'])."\">".($ligne["idPortable"]). "</option>";
    				}
    				echo "</select></td>";
    			echo "<tr><td>Marque</td><td>";
    			echo "<input type=\"checkbox\" value=\"Marque\" name=\"2\"></input><br/></td>";
    			echo "<td><select name=\"Liste2\"><option value=\"02\">Peu Importe</option>";
    			while($ligne=mysql_fetch_assoc($requete2))
    				{ echo  "<option value=\"". ($ligne['Marque'])."\">".($ligne["Marque"]). "</option>";
    				}
    				echo "</select></td>";
    			echo "<tr><td>CapaciteRAM</td>";
    			echo "<td><input type=\"checkbox\" value=\"capaciteRam\" name=\"3\"></input><br/></td>";
    			echo "<td><select name=\"Liste3\"><option value=\"peu\">Peu Importe</option>";
    			while($ligne=mysql_fetch_assoc($requete3))
    				{ echo  "<option value=\"". ($ligne['capaciteRam'])."\">".($ligne["capaciteRam"]). "</option>";
    				}
    				echo "</select></td>";
    			echo "<tr><td>SE</td><td><input type=\"checkbox\" value=\"se\" name=\"4\"></input>";
    			echo "<td><select name=\"Liste4\"><option value=\"peu\">Peu Importe</option>";
    			while($ligne=mysql_fetch_assoc($requete4))
    				{ echo  "<option value=\"". ($ligne['se'])."\">".($ligne["se"]). "</option>";
    				}
    				echo "</select></td>";
     
    			$deconnexion=mysql_close($connexion);
     
     
    		?>

    et ici le code pour récuperer ce que l'utilisateur a choisi dans un tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <?php
    		include ("./../Connexion/connexion.php");
    		$ordresql="SELECT ";
    		$count=0;
    		for ($id=1; $id<=4; $id++)
    			{
    				if (isset($_REQUEST[$id]) ==true)
    				{	$ordre=$_REQUEST[$id];
    						If($count==0)
    							{$ordresql=$ordresql.$ordre;
    							}
    						else
    							{$ordresql=$ordresql.", ".$ordre;				
    							}		
    			$count=$count+1;	
    			}
    			}
    		$ordresql.=" from portable";
    		echo $ordresql;
    		?>

    Mais je n'arrive plus à avancer je sais même pas quelle réflexion je dois avoir..

    Quelqu'un pourrait-il me donner une piste de réflexion au minimum s'il vous plait ?

    Je vous en remercie d'avance.
    Mael

  2. #2
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Bonjour

    Et pour l'instant, ça donne quoi le $ordresql ?
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Bonjour.

    J'ai finalement presque fini.
    J'ai juste un problème : Quand l'utilisateur ne sélectionne aucune check box j'ai un message d'erreur..
    Je l'ai résolue par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ini_set('display_errors','off');
    Mais j'aimerais ne pas à avoir à utiliser ça..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    		<table class="tablist">
    		<?php
    		ini_set('display_errors','off');
    		include ("./../Connexion/connexion.php");
    		$ordresql="SELECT ";
    		$tabNomChamp=array();
    		$comp=0;
    		echo "<tr></th>";
    		for ($id=0; $id<=3; $id++)
    			{
    				if (isset($_REQUEST[$id]) ==true)
    				{	$ordre=$_REQUEST[$id];
    					$tabNomChamp[]=$_REQUEST[$id];
    					echo"<th>".$_REQUEST[$id]."</th>";
    						If($comp==0)
    							{$ordresql=$ordresql.$ordre;
    							}
    						else
    							{$ordresql=$ordresql.", ".$ordre;				
    							}		
    					$comp=$comp+1;	
    				}
     
    			}			
     
    		$ordresql=$ordresql." FROM portable ";
    		$a=0;
    		echo"</tr>";
    		$res = $_REQUEST["choix"];
    		for ($i =0 ; $i<count($res); $i++)
    			{$num = $res[$i];
    				if ($num!="peu")
    				{ 
    					if ($a==0)
    					{	$ordresql.= "WHERE ".$_REQUEST[$i+1]."='".$num."'";
    					$a=1;
    					}
    					else
    					{
    						$ordresql.= " AND ".$_REQUEST[$i+1]."='".$num."'";
    					}
    				}	
    			}
    			$i=0;
    			$requete=mysql_query($ordresql,$connexion);
     
    			while($ligne=mysql_fetch_assoc($requete))
    				{ /*$num = $res[$i];	
    				 echo "<td>".$num."</td>";
    					$i++;*/
    					echo"<tr>";
    					for ($i=0;$i<=$comp-1;$i++)
    					{	$leChamp =$tabNomChamp[$i];
    						echo "<td>".$ligne[$leChamp]."</td>";
    					}
    					echo "</tr>";
    				}
    				echo "</tr>";
    				$deconnexion=mysql_close($connexion);
     
     
    		?>
    		</table>

  4. #4
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Au lieu de faire un ini_set, tu tests sur $_REQUEST et puis si il n'y a aucuns paramètre de POST ou de GET, tu commences pas la requête ...
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    D'accord Merci encore.

Discussions similaires

  1. Problème avec l'insertion d'un JCheckBox dans un tableau
    Par aljessy dans le forum Composants
    Réponses: 3
    Dernier message: 10/06/2013, 11h23
  2. [INSERT][SELECT] insert avec un select imbriqué
    Par narmataru dans le forum SQL
    Réponses: 11
    Dernier message: 06/03/2013, 03h04
  3. [MySQL] Problème Select-->Insert PHP
    Par antoine1504 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 09/12/2009, 15h43
  4. Problème SELECT/INSERT avec 3 tables
    Par caro22tens dans le forum Développement
    Réponses: 1
    Dernier message: 30/06/2009, 19h16
  5. [MFC] problème avec les insertions dans CComboBox
    Par Joeleclems dans le forum MFC
    Réponses: 12
    Dernier message: 11/06/2004, 15h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo