8795 sujets

Développement web côté serveur, CMS

Bonjour,

Je suis nouveau sur ce site, je suppose qu'il y a une charte à respecter, donc j'espère ne pas trop faire de bourde...

Je suis actuellement sur un projet scolaire qui demande la création d'une application (page web) qui gère l'ajout/la modification/la suppression d'un projet via une base de donnée.

C'est au niveau du code Php que j'ai un soucis ou du moins au niveau du formulaire.
Voici le code

<?php 
$link=mysql_connect("localhost", "root", ""); 
mysql_select_db ("master_igis"); 
  

if(isset($_POST['envoi_modif'])) { // Si la case Modifier pour un TER a été cochée alors... 
    
   $donnees=$_POST['recup_donnees']; 
  echo(" 
    
   <h2>Merci de remplir le formulaire ci-dessous</h2> 
   
  <form method='POST' action=''> 
    
   <label> Entrez le numero de projet </label> 
   <p><input type='hidden' value='".$donnees['id_projet']."' name='id_projet' /></p> 
   
   <label> Entrez le titre du projet </label> 
   <p><input type='text' value='".$donnees['titre']."' name='titre' /></p>  
    
   <label> Entrez les compétences requises </label> 
   <p><input type='text' value='".$donnees['competence_requise']."' name='competence_requise'/></p> 
  
   <label> Entrez la description du projet </label> 
   <p><input type='text' value='".$donnees['description']."' name='description'/></p> 

   <label> Entrez le nombre d'étudiants concernées </label> 
   <p><select value='".$donnees['nb_etudiant']."' name='nb_etudiant'> 
     <option value='1'>1</option> 
     <option value='2'>2</option> 
     <option value='3'>3</option> 
     <option value='4'>4</option> 
     <option value='5'>5</option> 
     <option value='Indifférent'>Indifférent</option> 
    </select> 
   </p> 

   <label> Entrez la filière </label> 
   <p><input type='text' value='".$donnees['filiere']."' name='filiere'/></p> 
  
   <label> Entrez le contact </label> 
   <p><input type='text' value='".$donnees['contact']."' name='contact'/></p> 
  
   <label> Entrez l'ID de l'enseignant </label> 
   <p><input type='text' value='".$donnees['id_enseignant']."' name='id_enseignant'/></p> 

   <label> Entrez le fichier </label> 
   <p><input type='text' value='".$donnees['fichier']."' name='fichier'/></p> 

  <input type='submit' value='Envoyer' name='envoi_update'/> <input type='reset' /></form>  
    
   "); 
   
  } 

if(isset($_POST['envoi_update'])) { // Si la case Envoyer pour effectuer un update été cochée alors... 
  // On stocke tout les champs renseigner ou non dans des variables 
   
   
   $id_projet=$_POST['id_projet']; 
   $titre=$_POST['titre']; 
   $competence_requise=$_POST['competence_requise']; 
   $description=$_POST['description']; 
   $nb_etudiant=$_POST['nb_etudiant']; 
   $filiere=$_POST['filiere']; 
   $contact=$_POST['contact']; 
   $id_enseignant=$_POST['id_enseignant']; 
   $fichier=$_POST['fichier']; 
   // Requete MYSQL qui permet l'insertion des données , stockée dans $réponse qui servira par la suite 
   $reponse = mysql_query("UPDATE projet SET titre = '$titre',competence_requise = '$competence_requise', description = '$description',nb_etudiant = '$nb_etudiant',filiere = '$filiere',contact = '$contact',id_enseignant = '$id_enseignant',fichier = '$fichier' WHERE id_projet = $id_projet") or die(mysql_error()); // Permet de préciser l'erreur s'il y en a une 
   header('Location: test.html'); 
   
  } 
  
mysql_close($link); // Déconnexion de MySQL 
?>





Mon problème vient dans le fait que lors de l'affichage de ma page test2.php, le formulaire me marque comme valeur par défaut la valeur 'A' pour chaque variable.
Or j'aimerais qu'il affiche les valeurs du projet(=TER) selectionnés.
J'aimerais comprendre d'où peut venir cette erreur.

Merci d'avance pour vos réponses .
Bonsoir,



$donnees=$_POST['recup_donnees'];   // que contient $_POST['recup_donnees'] ??


Mastrama a écrit :

// Si la case Envoyer pour effectuer un update été cochée alors...


Je ne vois pas de checkbox correspondant à cela mais un bouton submit


 <input type='submit' value='Envoyer' name='envoi_update'/>


Tu fermes la connexion mysql après une instruction header conditionnel, dons si header() est exécuter tu ne fermera pas la connexion.
Tu propose de renseigner le N° du projet dans un input hidden, balise qui par définition n'est pas affiché.

Revois l'ensemble de ta page en simplifiant pour commencer avec seulement 2 champs et un submit, par exemple. Puis tu passeras au formulaire complet.

Smiley cligne
Administrateur
Bonjour et bienvenue Mastrama, Smiley smile

Mastrama a écrit :
Je suis nouveau sur ce site, je suppose qu'il y a une charte à respecter, donc j'espère ne pas trop faire de bourde...
Tu l'as acceptée en t'inscrivant nan ? Smiley confus Et il y a le lien Aide dans le menu en haut à gauche. Smiley cligne
Et pas de bourde constatée non Smiley lol

Si tu souhaites te présenter, il y a un sujet dans le Bar, parmi les premiers sujets