PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Re : Forum Général PHP » choix multiple et traitement des données » 19-01-2016 12:29:26

Merci our ta reponse tof73  $param_rech représente la variable $_POST['fruits'] du premier formulaire de la page liste.php et c'est à travers cette variable que j'ai pu loger de facon nickel le nom d'un fruit quelconque que j'ai choisi sur la liste deroulante issue de ce même formulaire ainsi a chaque fois que je click sur un des noms des fruits qui s'affiche sur cette liste deroulante , j'ai pu afficher les autres données relatives au fruit en question, c'est à dire son NOM son PRIX et sa SAISON sans probleme à travers un echo jusque là pas de probleme.
Voila donc quelques explications par rapport à votre premiere question
Maintenant pour la suggestion que vous me faites '' il faut donc dans liste.php faire un lien vers liste2.php en passant en paramètre le fruit dont on veux modifier le prix.'' , voulez vous etre un peu plus explicite en me donnant des explications par rapport à comment faire le lien vers la page liste2.php et ensuite et comment recuperer sur la page liste2.php les variables  $param_rech  et $prix que j'ai pu trouvées sur la page liste.php
je suis un débutant en php

merci

#2 Forum Général PHP » choix multiple et traitement des données » 19-01-2016 12:29:26

abdoulayecoumba
Réponses : 3

Bonjour,
J'ai créé une table contenant trois colonnes ;
Noms (il s'agit de noms de fruits ), Saison , Prix

J'ai créé un formulaire contenant une liste déroulante des différents noms de fruits qui me permet d'aller extraire au niveau de la table le Prix et la Saison et les afficher . Jusque là tout fonctionne comme je le veux .
Maintenant je voudrais augmenter à souhait le prix du fruit affiché comment ? En créant dans une autre page un nouveau formulaire contenant un seul champs de saisie intitulé '' Montant à augmenter '' et qui devra s'afficher en dessous de l'affichage du prix et de la saison .
Je voudrais à partir de ce formulaire saisir le montant que je voudrais augmenter sur le prix puis exporter au niveau de la table le nouveau prix c'est à ce niveau ou j’éprouve toute les difficultés du monde car malgré le fait que le deuxième formulaire s'affiche correctement wamp me signale à ce niveau deux erreurs :
Notice: Undefined index: montantaug in C:\wamp\www\Nouveau dossier (2)\programme_recherche2\liste2.php on line 23
Notice: Undefined variable: prix in C:\wamp\www\Nouveau dossier (2)\programme_recherche2\liste2.php on line 3
Et puis je souhaiterais savoir pourquoi aprés avoir valider le montant à augmenter tout le contenu de l'ecran disparaît seul s'affiche le deuxieme formulaire .
Cette difficulté me pourrit la vie depuis bientôt dix jours j'ai beau essayer de piocher une solution sur le net mais je ne trouve pas de solution .
Je me suis rendu compte que si je réunis tout dans un seul formulaire ca marche nickel, mais moi je tiens à avoir deux formulaires distincts.
Je rappelle je suis débutant je ne connais que le html et le PHP je connais absolument rien en Java script voici mon code



-----------------------------------------------------------------------------------
Contenu de la page liste..php
-----------------------------------------------------------------------------------
<html >

<body>
   
<?php
         
    try
       {
        $bdd = new PDO('mysql:host=localhost;dbname=productions','root','',array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
       }
    catch(Exception $e)
       {
        die('Erreur : '.$e->getMessage());
       }
     
     
     
  ?>
  // Liste déroulante
 
    <form method="POST" action="liste.php">
        <label for="fruits">Choisir le type de fruit que vous voulez changer le prix</label><br><br/>
            <select name="fruits" id="fruits">
<?php
        $reponse = $bdd->query('SELECT * FROM fruits');
    while ($donnees = $reponse->fetch())
       {
  ?>
        <option value="<?php echo $donnees['nom'];?>"> <?php echo $donnees['nom'];?> </option>
<?php
       }
     
?>
            </select>
     
            <br><br/>
      <input type="submit" name="valider" value="VALIDER"/><br><br/>
     
    </form>
 
 
<?php

    // Recherche dans la table du prix actuel et affichage de celui ci
 
   if( isset( $_POST['fruits'] ))
                 
    {  
                    $param_rech = $_POST['fruits'];
         
                   
?>
 
 
<?php
         
     $req = $bdd->prepare('SELECT * FROM fruits WHERE nom = :nom_fruit');
     $req->execute(array(

           ':nom_fruit' => $param_rech,
 
           ));
       
       
      while ($result = $req->fetch())
 

            {
         
              echo 'Le prix actuel de '.''.$param_rech.''. 'est de :'.''.$result['prix'].''.$result['saison'].'<br><br />';
       
              $prix = $result['prix'];
               
        }

            $req->closeCursor();
     
     
     
      require_once "liste2.php";     
        }
   
   
   

   
     
?>

   
   
 
 
 
</body>
</html>

-----------------------------------------------------------------------------------
Contenu de la page liste2..php
-----------------------------------------------------------------------------------


<html >
<body>

<form  method='POST' action='liste2.php'>
    <input type="hidden" name="fruits" id="input_cache_fruits" value="$param_rech">
 
     <label for="montantaug">Montant augmentation</label>
     <br>    
     <input type="text" name="montantaug" id="montantaug">
   <br><br>
     <input type="submit" name="valider" value="VALIDER LE MONTANT A AUGMENTER"/>
  </form>
 
 
 
<?php
  if( isset( $_POST['montantaug'] ))
                 
    {  
                    $param_rech = $_POST['fruits'];
          $montantaug = $_POST['montantaug'];
         
   // Calcul du nouveau prix
   
                          function calculaugmentation($prix, $montantaug)
                       {
                            $nouvprix = $prix + $montantaug;// calcul du nouveau prix
                            return $nouvprix; // indique la valeur à renvoyer, ici le nouveau prix
                       }

                            $nouvprix = calculaugmentation($prix, $montantaug);
   
                   

                     echo 'Le nouveau prix de '.''.$param_rech.''. 'est de :'.''.$nouvprix.''.'<br><br />';                
}
?>

</body>
</html>

 

#3 Forum Général PHP » faire une recherche simple » 05-11-2015 03:11:12

abdoulayecoumba
Réponses : 0

Bonsoir, je souhaite faire un moteur de recherche simple pour une table dénomée ''clients'' qui comporte deux champs ''Prenom'' et ''nom'', alors si j'effectue une recherche rien ne s'affiche comme resultat à part le formulaire je veux de l'aide
voici le code :

<!DOCTYPE html>
<html>   
      <head>
           <title> Moteur de recherche</title>
           <meta charset ='UTF-8'/>
      </head>
      <body>   
           <p>Rechercher un client</p>
           <form method="post" action="jordan.php"/>
                     <input type="text" name="individu"/>
                     <input type="submit" value="Ok"/>
           </form>
<?php
            try      
           {
          $db = new PDO('mysql:host=localhost;dbname=productions','root','');
                 }
               catch(PDOException $e)
           {
          die('Erreur : '.$e->getMessage());
            }            
    if(isset($_POST['individu']))      
            {    
             $req = $db->prepare("SELECT * FROM clients where prenom like :individu");
            $req->execute(array(':individu'=>'%' . $_POST['individu'] . '%'));     

             // On affiche chaque entrée une à une
   
            $donnees = $req->fetchALL();
            if(!empty($donnes))
                   {
                    echo '<h3>Résultats de la recherche :</h3>';
                   foreach($donnees as $row)              
                      {      
                      echo $row ['prenom'].'---'.$row ['nom'];
                       }  
                  }  
            }
?>   
      </body>
</html>

#4 Forum Général PHP » Moteur de recherche sur une table » 24-11-2015 21:19:15

abdoulayecoumba
Réponses : 1

Salut Je veux créer un moteur de cherche sur une table nommée ''clients'' et qui comporte les champs ''prenom'' et ''nom'' mais à chaque fois que j'effectue une recherche aucun résultat ne 's'affiche , même pas un message d'erreur , j'ai beau regardé mon code mais je n'arrive pas à trouver la ou ca déconne , est ce que quelqu'un pourrait me fournir son aide
merci
voici mon code:
<!DOCTYPE html>

     <html>
    
         <head>
               <title> Moteur de recherche</title>
               <meta charset ='UTF-8'/>
        
         </head>
        
            <body>
            <?php
            if(isset($_POST['query']) && !empty($_POST['query']))
           
             {
                    $query= preg_replace("#[^a-z?0-9]#i","",$_POST['query']);
                   
                    $sql= "SELECT id,prenom AS title FROM clients WHERE prenom LIKE ? OR nom LIKE ?";
               
                //conncxion a la base de données
               
                include("fspeciales/connecter.php");
               
                $req = $connex->prepare($sql);
                $req->execute(array('%'.$query.'%','%'.$query.'%'));
               
                $count = $req->rowcount();
                if($count >= 1)
                      
                      {
                         echo "$count le(s) résultat(s) trouvé(s)pour <strong>$query</strong> </hr>";
                            
                            while ($data = $req->fetch(PDO::FETCH_OBJ))
                           
                            {
                              echo "#".$data->id.'- Titre: '.$data->prenom;
                            }
                      }
                else
                      {
                        echo"0 resultat trouvé pour votre recherche :<strong>$query</strong></hr>";
                      }
             }
           
            ?>
               <form action=  "<?php echo $_SERVER['PHP_SELF']; ?> " methode= "post ">
               <br>
               <br>
                   <label for=  "query " >Entrez votre recherche :</label>
                   <input type= "search" name= "query" maxlength= "80" size= "80" id= "query"/>
                   <input type= "submit" value= "Rechercher">
               </form>   
        
            </body>
     </html>

#5 Forum Général PHP » Changer le champs d'un enregistrement d'une table » 28-10-2015 18:39:15

abdoulayecoumba
Réponses : 0

Bonjour,
Je cherche quelqu'un qui puisse m'aider à trouver un tutoriel ou un cours simple sur la mise à jour d'un champs d'un enregistrement d'une table . Par exemple ma table comporte  les champs PRENOM, NOM, ADRESSE
Je voudrais tout simplement aprés m'etre connecté à ma base de données, effectuer via un formulaire une recherche par rapport au contenu du champs NOM et une fois l'enregistrement retrouvé effectuer un changement au niveau de l'ADRESSE puis retransferer vers la table le nouveau enregistrement avec la nouvelle ADRESSE
merci

#6 Re : Forum Général PHP » Rectifications avec PDO » 19-10-2015 12:14:51

Salut tof73
J'ai fait ce que vous m'avez suggéré avec fetchall(), mais ca ne m'affiche que le premier enregistrement de la table je vous redonne le code rectifié:

<html>

     <?php
            //tentative de connexion à la base de données
        try
            {
                $conect = new PDO('mysql:host=localhost;dbname=amateurs','root','');
            }
                           catch (PDOException $e)
            {       
                               echo "Problème de connexion avec la base de donnée / Database error<br/>".$e->getMessage();
                                die();
                                          }
           
        try   
            {   
                $retour = $conect->query('SELECT * FROM agents');
                                    $donnee = $retour->fetchAll();
            }
        catch (PDOException $e)
            {
                echo "Problème pour lire la base <br/>Opération annulée";
                die();
                               
                                 }
          echo $donnee[0]['prenom'].':'.$donnee[0]['nom'].':'.$donnee[0]['adresse'].'<br/>';
         
       
        $base = null;

    ?>
                       
               
</html>

#7 Forum Général PHP » Rectifications avec PDO » 19-10-2015 12:14:51

abdoulayecoumba
Réponses : 2

Bonsoir finalement je suis allé me replonger dans les cours disponibles sur le net traitant PDO notamment de la connexion aux bases de données de la gestion des erreurs avec je rappelle j'ai créé une base de données dénommée ''amateurs'' et qui contient une table dénommée ''agents'' ayant 3 colonnes suivantes : ''prenom'' ''nom'' ''adresse'' (il s'agit des noms de chaque colonne tels que je les ai écrits dans la base avec l'interface mysql de wamp ) et que j'ai rempli via un formulaire jusque là tout marche bien la table reçoit correctement touts les enregistrements que j'y envois.
Mais c'est quand je veux afficher les données de la table que j'ai des problèmes.
J'ai essayé d'utiliser le try/catch pour la connexion avec la base de données je pense l'avoir réussi car si j’exécute le code jusqu'à la ligne 13 le navigateur m'affiche une page blanche donc je cocois tel que j'ai rédigé le code qu'il n'y a pas d'erreur de connexion.
Je voudrais que quelqu'un me donne son avis sur le reste du code car le navigateur m'affiche les erreurs suivantes :
Notice: Undefined index: prenom in C:\wamp\www\Nouveau dossier (2)\Site2\pour_essayer.php on line 27

Notice: Undefined index: nom in C:\wamp\www\Nouveau dossier (2)\Site2\pour_essayer.php on line 27

Notice: Undefined index: adresse in C:\wamp\www\Nouveau dossier (2)\Site2\pour_essayer.php on line

Je rappelle que la ligne 27 est celle qui correspond à l'avant derniere ligne du code ci dessous  :

echo $donnee['prenom'].':'.$donnee['nom'].':'.$donnee['adresse'].'<br/>';

voici le code :

<html>

     <?php
            //tentative de connexion à la base de données
        try
                       {
                $conect = new PDO('mysql:host=localhost;dbname=amateurs','root','');
            }
                            catch (PDOException $e)
            {       
                             echo "Problème de connexion avec la base de donnée / Database error<br/>".$e->getMessage();
                             die();
                                           }
           
        try   
            {   
                $retour = $conect->query('SELECT * FROM agents');
                                    $donnee = $retour->fetchAll();
            }
        catch (PDOException $e)
            {
                echo "Problème pour lire la base <br/>Opération annulée";
                die();
                                  }
       
       
                           echo $donnee['prenom'].':'.$donnee['nom'].':'.$donnee['adresse'].'<br/>';         
       
        $base = null;

    ?>
                       
               
</html>

#8 Forum Général PHP » Affichage de mes enregistrements impossibles » 16-10-2015 02:24:53

abdoulayecoumba
Réponses : 0

Bonjour,
je suis nouveau en programmation, j'ai un probleme avec mon code qui doit me permettre d'afficher les enregistrements contenus dans ma base de données ( amateurs) plus précisément dans ma table (agents) qui comporte les colonnes ''prenom", ''nom'' , ''adresse'
mais wamp me signale l'erreur suivante :
Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\Nouveau dossier (2)\Site2\pour_essayer.php on line 7
j'ai beau fouiné dans la toile à la recherche d'une solution , je l'avoue tout ce que j'ai trouvé une multitudes de solutions et de reponses que j'ai tentées d'appliquer à chaque qu'il me semblait y avoir compris queque chose, ,alheureusement toutes mes tentatives sont réstée vaine .
Est ce que quelqu'un pourrait m'aider à trouver une solution avec des explications simple facile à comprendre pour un débutant comme moi avec des expréssions moins techniques de pros car je m'y perds souvent
mon code:

<html>

                <?php
               
                $bdd = new PDO('mysql:host=localhost;dbname=amateurs','root','');
                $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
               
                $req1 = $bdd->query('SELECT * FROM agents );
                while($donnees = $req1->fetch());
                {
                echo $donnees['prenom'].':'.$donnees['nom'].':'.$donnees['adresse'].'<br/>';
                }
               
                 ?>
                       
               
</html>

#9 Re : Forum Général PHP » Impasse avec PDO » 12-10-2015 19:57:48

je voudrais maintenant que les données saisies soient envoyées au niveau de ma table qui s'appelle ''agents'' et que j'ai construit avec PHPMyadmin de waùp

#10 Re : Forum Général PHP » Impasse avec PDO » 12-10-2015 19:57:48

Bonsoir, j'ai essayé de rectifier mon code  maintenant wamp ne me signale plus aucune erreur et m'affiche correctement mon formulaire , le seul problème auquel je suis actuellement confronté est que lorsque je tente de saisir des informations avec le formulaire, dés que j'appuis sur le bouton ''ENVOYER'' le navigateur m'affiche ''PAGE WEB INTROUVABLE''
quel est le problème


 <html>
    <head>
   </head>
    <body>
  <?php
   
             if ( isset( $_POST['prenom'] ))
                         {  
                            $prenom = $_POST['prenom'] ;
                                          $nom = $_POST['nom'] ;
                           $adresse = $_POST['adresse'] ;
             
           $bdd = new PDO('mysql:host=localhost;dbname=amateurs','root','');

                                         $req = $bdd->prepare("INSERT INTO agent(prenom,nom,adresse) VALUE
                                        (:prenom, :nom, :adresse)");
                                             $req->bindValue(':prenom', $prenom, PDO::PARAM_STR);
                                             $req->bindValue(':nom', $nom, PDO::PARAM_STR);
                                             $req->bindValue(':adresse', $adresse, PDO::PARAM_STR);
                                             $req->execute();
             
             
               echo'Merci de vous être enregistré';
           
                                          }        
                                   else
             
                          {                        
                                    echo"
     
                                   // Le formulaire //
                                  <form  method='post' action='form.php'>
                                              Prenom :
                              <br/>
                             <input type='text' name='prenom'/>
               <br/>
                                Nom :
                              <br/>  
                                              <input type='text' name='nom'/>
               <br/>
                 Adresse :
                <br/>  
                                              <input type='text' name='adresse'/>
                <input type='submit' value='Inscription'/>
                                </form>
                                               ";
                                              }  
   ?>

    </body>
</html>
 

#11 Re : Forum Général PHP » Impasse avec PDO » 12-10-2015 19:57:48

j'ai pu essayé de faire de construire ceci pour resoudre mon probleme quelqu'un pourrait il regarder et me rectifier s'il y'a lieu
Wamp me signale une erreur à la ligne l 31 c'est au niveau de la ligne '' $req->bindValue(:prenom, '$prenom', PDO: ARAM_STR); ''
j'ai beau cherché mais je sais pas à quoi cela est dû
le méssage d'erreur est le suivant:
Parse error: syntax error, unexpected ':' in C:\wamp\www\Nouveau dossier (2)\Site2\mon quatrieme site.php on line 31
merci

<html>
    <head>
    </head>
    <body>
   
        <?php
   
              $prenom = $_POST['prenom'] ;
              $nom = $_POST['nom'] ;
              $adresse = $_POST['adresse'] ;

            echo"

            <form  method='post' action='form.php'>
                   Prenom :
                   <br/>
                   <input type='text' name='prenom'/>
                   Nom :
                   <br/> 
                   <input type='text' name='nom'/>
                   Adresse :
                   <br/> 
                   <input type='text' name='adresse'/>
                   <input type='submit' value='Inscription'/>

             </form>
             ";
          $bdd = new PDO('mysql:host=localhost;dbname=amateurs','root','');

              $req = $bdd->prepare("INSERT INTO agent(prenom,nom,adresse) VALUE (:prenom, :nom, :adresse)");
              $req->bindValue(:prenom, '$prenom', PDO:   ARAM_STR);
              $req->bindValue(:nom, '$nom', PDO:   ARAM_STR);
              $req->bindValue(:adresse, '$adresse', PDO:   ARAM_STR);
              $req->execute();
   
?>

    </body>
</html>

#12 Forum Général PHP » Impasse avec PDO » 12-10-2015 19:57:48

abdoulayecoumba
Réponses : 4

Bonjour,
je  Suis nouveau en programmation et depuis un certain temps je me suis mis en PDO depuis que j'ai appris que la procédure de connexion à une base de donnée par Mysql_connect et Mysql_query étaient périmé
maintenant j’éprouve d'énormes difficultés et je ne trouve pas de solution par rapport à une question très simple , comment parvenir à alimenter une table contenue dans une base via  un petit formulaire avec PDO . J'ai consulté toute la littérature ,les tutos , etc faits sur PDO je ne trouve rien qui puisse répondre à ma préoccupation.
J'ai créé une base de donnée avec phpMyadmin  nommée  : ''amateurs'' et
une table nommée :''inscription''
La table est constituée des 3 champs suivants : ''prénom'' , ''nom'' , ''adresse''
Je comprend comment faire pour me connecter à la base j'ai parfaitement réussi cette étape avec le code suivant :

<?php
       $bdd = new PDO('mysql:host=localhost;dbname=amateurs','root','');
       echo"Connection a la base réuissie"
?>

maintenant je cherche quelqu'un pour m'aider à écrire le reste du code qui me permettra :
de construire un formulaire pour remplir ma table et la requette appropriée pour transférer les données saisies dans le formulaire vers la table.
Ca me sera d'un grand apport si quelqu'un pourrait m'apporter son aide
merci d'avance

#13 Forum Général PHP » Probleme avec Mysqli » 07-10-2015 21:27:00

abdoulayecoumba
Réponses : 1

Bonjour je suis un nouveau en programmation,
J'ai essayé de créer une base de données via PHPMyadmin de Wamp ensuite j'ai essayée d'alimenter cette base via un formulaire avec le code suivant:

Ligne 1      $link= mysqli_connect('localhost','root','')or die('serveur');
Ligne 2      mysqli_select_db('amateurs')or die('introuvable');
                             
                           
Ligne 3      $sql = "INSERT INTO inscription VALUES ('','$nom_utilisation','$mot_pass','$date','$adresse_email')";
Ligne 4      mysqli_query ($sql) or die ('ECHEC ENREGISTREMENT');

Mais à la ligne 2 wamp m'affiche l'Erreur suivante:
Warning: mysqli_select_db() expects exactly 2 parameters, 1 given in C:\wamp\www\Nouveau dossier (2)\Site2\mon troisieme site.php on line 2

Et je demande aussi est ce que je risque pas d'avoir le même problème à la ligne 4
Comment résoudre cette difficulté

Je rappelle que j'ai utilisé ''mysqli'' a la place de ''mysql'' car wamp m'a signalé que  ''mysql'' est obsoléte (périmé)
Aidez moi si possible car ce truc me pourrit la vie et commence même à briser ma volonté d'apprendre dans un domaine qui me passionne vraiment . Ca fait plus de 72H que je ne parviens pas un mettre des enregistrements dans ma base
Jutilise Wampserver 2.5

Pied de page des forums

Propulsé par FluxBB