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

Langage PHP Discussion :

un petit coup de pouce svp


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Femme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 43
    Points : 18
    Points
    18
    Par défaut un petit coup de pouce svp
    Bonjour,

    voilà depuis hier j'essaie de trouver ce que j'ai bien pu faire comme merdier mais en vain. Comme j'ai appris le php que depuis très peu, j'ai l'impression d'avoir un peu tout melanger. Bref, j'aurais besoin d'un petit coup de pouce de votre part car là je sature!!

    J'ai crée un formulaire, qui va chercher les noms dans la base de donnée. Le but c'est que lorsque l'utilisateur choisi un nom et qu'il clique sur envoyer tout les détails de ce noms (qui sont dans la bdd) apparaissent sur cette même page.

    Voici le code ( c'est un peu long désolée mais je suis sur que vous aurez tout ce qu'il vous faut), je ne demande pas a ce qu'on me mache le travail, mais un petit coup de pouce me ferai plaisir. Merci

    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
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    <form method="post" action="race_chien2.php">
    <fieldset>
           <legend>Rechercher un profil </legend>
       <p>
          <label for="Noms">Choisissez la race :</label>
           <select name="Noms" id="Noms">
     
    	   <?php
    $host = "127.0.0.1";
    $user = "root";
    $password = "";
    $bdd = "tout_sur_les_chiens"; 
    {
    mysql_connect($host, $user, $password);
    mysql_select_db($bdd) or die("Impossible d'ouvrir la base de donnee $bdd");
    }
     
    	$lettre = '1'; //On initalise la lettre a une valeur absurde
    	$sql = 'SELECT Noms FROM race_chien ORDER BY Noms ASC'; //ici change le champ et la table pour adapter :p
    	$req = mysql_query($sql) or die(mysql_error());
     
    	while($data = mysql_fetch_assoc($req)) //envoie la colonne voulu $req= connect a $sql = prendre tous les noms de race_chien et classer par ordre croissant
    	{
    	   if (substr($data['Noms'],0,1) != $lettre) //Si on change de lettre; substr = extraire
    	   {
    			if ($lettre != '1') //Si on as déjà changé de lettre, on ferme le optgroup
    			{
    				echo '</optgroup>';
    			}
    			$lettre = substr($data['Noms'], 0, 1);
    			echo '<optgroup label="'.$lettre.'">';
    		}
     
    		echo '<option value="'.$data['Noms'].'">'.$data['Noms'].'</option>';//donne les noms dans le formulaire
    	}
     
    	if ($lettre != '1') //Et enfin si on a mit une lettre (le seul cas ou ce serait faux serait celui ou l'on ne trouve rien, mais quand même :p
    	{
    		echo '</optgroup>';
    	}
    		?>
           </select>
        	<input type="SUBMIT" name="Noms" value="Rechercher">		
     
       </p>
    </fieldset>
    </form>   
    </body>
    </html>
        <?php 	
     
    $sql =('SELECT * FROM race_chien WHERE Noms');
    $reponse = mysql_query($sql) or die ( mysql_error());
    $donnees = mysql_fetch_assoc($reponse);
    $Noms=(isset($_POST["Noms"])) ? $_POST["Noms"] : ""; 
     
    	if ($_POST['Noms']=="ok") 
    {
    	echo $donnees;
     
    	?>   
    	<p>
        <strong>Races :</strong><?php echo $donnees['Noms']; ?><br />
        <strong>Origine :</strong><?php echo $donnees['Origine']; ?><br /> 
    	<strong>Espérance de vie :</strong><?php echo $donnees['Esperance']; ?><br />
    	<strong>Tailles Mâles :</strong><?php echo $donnees['Tailles_Males']; ?>cm et <?php echo $donnees['Tailles_Males_Max']; ?>cm<br />
    	<strong>Tailles Femelles :</strong><?php echo $donnees['Tailles_Femelles']; ?>cm et <?php echo $donnees['Tailles_Femelles_Max']; ?>cm<br />
    	<strong>Poids Mâles :</strong><?php echo $donnees['Poids_Males']; ?>kg et <?php echo $donnees['Poids_Males_Max']; ?>kg<br />
    	<strong>Poids Femelles :</strong><?php echo $donnees['Poids_Femelles']; ?>kg et <?php echo $donnees['Poids_Femelles_Max']; ?>kg<br />
    	<strong>Standare FCI :</strong><?php echo $donnees['Standare_FCI']; ?><br />
    	<strong>Standare AKC :</strong><?php echo $donnees['Standare_AKC']; ?><br />
    	<strong>Historique :</strong><?php echo $donnees['Historique']; ?><br />
    	<strong>Caractères :</strong><?php echo $donnees['Caracteres']; ?><br />
    	<strong>Physiques :</strong><?php echo $donnees['Physiques']; ?><br />
    	<strong>Défauts :</strong><?php echo $donnees['Defauts']; ?><br /></em>
       </p>
     
    	<?php
    }
    {
    $reponse = mysql_close(); // Termine le traitement de la requête
    }
    	?>
    J'espère que je n'ai pas écrit de gros monstuosité

  2. #2
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 386
    Points : 3 531
    Points
    3 531
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Quel est le problème exactement ? messages d’erreurs ?
    Consultant et développeur full-stack spécialiste du Web
    faq jQuery - règles du forum - faqs web

  3. #3
    Membre à l'essai
    Femme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 43
    Points : 18
    Points
    18
    Par défaut
    Bonjour,

    ça me met :

    Notice: Undefined index: Noms in C:\Users\anva\Desktop\www\www\ToutSurLesChiens\race_chien2.php on line 91

    Sinon l'affichage ne se fait pas.

  4. #4
    Membre confirmé
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Points : 518
    Points
    518
    Par défaut
    Salut
    je n'ai pas tout regardé le code, mais déjà il y a un soucis lors de ta requête d'affichage.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    'SELECT * FROM race_chien WHERE Noms'
    avec ça tu ne vas rien récupérer !

    Comme cela ce sera mieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'SELECT * FROM race_chien'
    Zend PHP5 Certification
    MySQL 4 Core Certification

  5. #5
    Membre à l'essai
    Femme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 43
    Points : 18
    Points
    18
    Par défaut
    Merci pour votre réponse, en fait j'ai mis where, parce que dans ma tete je voulais qu'il recupère la ligne du noms que l'utilisateur a selectionné.

    J'ai testé, mais comme je m'y attendais ça ne fonctionne pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $sql =('SELECT * FROM race_chien');
    $reponse = mysql_query($sql) or die ( mysql_error());
    $donnees = mysql_fetch_assoc($reponse);
    $Noms=(isset($_POST["Noms"])) ? $_POST["Noms"] : ""; 
     
    	if ($_POST['Noms']=="ok") 
    {
    	echo $donnees;
    Je pense que mon erreur doit se trouver la dedans. J'ai essayé plusieurs trucs...En vain.

  6. #6
    Membre confirmé
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    397
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 397
    Points : 518
    Points
    518
    Par défaut
    Je vois un second problème

    Ta liste déroulante "select" a le même nom que ton "input"
    name="Noms"
    du coup tu dois perdre la valeur du select au profit de celle de l'input submit

    Je te propose donc de laisser <select name="Noms" ... >
    et pour l'input tu changes <input type="submit" name="ok" ... >

    ensuite pour afficher selon le choix de la liste box il faut faire quelque chose comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if(!empty($_POST['ok'])  )
    {
     // n'oublie pas de t'informer sur la sécurité des données 
    // qui proviennent de l'extérieur... 
         $query_chien = (!empty($_POST['Noms'])?"WHERE Noms='".$_POST['Noms']."'":"");
         $sql ="SELECT * FROM race_chien $query_chien";  
          // etc
    }
    Zend PHP5 Certification
    MySQL 4 Core Certification

  7. #7
    Membre à l'essai
    Femme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 43
    Points : 18
    Points
    18
    Par défaut
    Merci pour ton aide, je vais faire tout ça.
    Et merci pour l'avertissement, je l'avais déjà pas mal lu dans les cours " ne jamais faire confiance aux utilisateurs". Le problème c'est quand on est pas expérimenter, on ne fait pas attention a tout Jusqu'au jour ou on se retrouve dans un beau merdier parce que X a décider de s'amuser

    Comme je dis souvent, : " y-a qu'en faisant des erreurs qu'on apprend"

    Bon bah je retourne reflechir merci en tout cas

Discussions similaires

  1. ZEOS : encore un petit coup de pouce svp
    Par llewsor dans le forum Débuter
    Réponses: 6
    Dernier message: 21/01/2013, 16h51
  2. SDL & GTK besoin d'ub petit coup de pouce :)
    Par hunter99 dans le forum SDL
    Réponses: 1
    Dernier message: 15/04/2007, 23h51
  3. un petit coup de pouce svp ;)
    Par softstar dans le forum C++
    Réponses: 14
    Dernier message: 11/05/2006, 09h20
  4. tableau de pointeur+tri+coup de pouce svp
    Par php4life dans le forum C
    Réponses: 12
    Dernier message: 15/04/2006, 13h49
  5. Réponses: 3
    Dernier message: 28/02/2003, 17h06

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