8722 sujets

Développement web côté serveur, CMS

Bonsoir quelqu'un pour m'aider a savoir pourquoi mon code ne parvient pas à inserer ni à update ni à delete merci de prendre la peine de me lire.

code inde.php(en html)


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">




<head>
<title>formulaire pour script php/mysql</title>
</head>
<body>
<h1>formulaire pour script php/mysql</h1>

<form   method="POST" action="traitementform2.php">
<table border="0">


<tr><td><label for='titre'>Titre:</label></td> 
	<td><input type='text' name='titre' size='20'  /></td></tr>


<tr>
    <td><label for='annee'>Année:</label></td> 
	<td><input type='text' name='annee' size='4'  maxlength='4'/></td>
</tr>


<tr><td><label><b>Genres:</b></label></td> </tr><br/>

<tr><td>Comédie		:<input type='checkbox' name='genre[]'  value='C' />			</td>
	<td>Drame		:<input type='checkbox' name='genre[]'  value='D' />			</td>
    <td>Histoire	:<input type='checkbox' name='genre[]'  value='H' />			</td>
	<td>Suspense	:<input type='checkbox' name='genre[]'  value='S' />			</td>
</tr>



<tr><td><label><b> Pays:</b></label></td> </tr>

<tr>
	<td>France 		:<input type='radio' name='pays'  value='FR'  checked='1'/></td>
	<td>Etats-unis 	:<input type='radio' name='pays'  value='US' /></td>
	<td>Allemagne	:<input type='radio' name='pays'  value='DE' /></td>
	<td>Japon 		:<input type='radio' name='pays'  value='JP' /></td>
</tr>

<tr><td><label> Meteur en scène:</label></td> </tr>

<tr>
   <td><input type='text' name='nom'   	size='20'  placeholder='Nom'/>	 </td>
   <td><input type='text' name='prenom' size='20'  placeholder='Prenom'/></td>
</tr>


<tr><td><label> Année de naissance:</label></td> </tr>

<tr>
   <td><input type='text' name='annee_naissance'   	size='4'   maxlength='4' value='2000'/></td>
</tr>


<tr><td><label> Résumé:</label></td> </tr>

<tr>
   <td><textarea type='text' name='resume'   	rows='3' cols='30'  placeholder='résumé du film' > </textarea></td>
</tr>

<tr><td><label> Votre action:</label></td> </tr>

<tr>
   <td><input type='submit' name='inserer' 	value='Insérer'/></td>
   <td><input type='submit' name='modifier' value='Modifier'/></td>
   <td><input type='submit' name='detruire' value='Détruire'/></td>
   <td><input type='reset'  name='annuler' 	value='Annuler'/></td>
</tr>

</table >


</body>

</html>









traitementform2.php (php)

<?php
//ici on inclu la page de configuration config.php
require_once("config.php");

			//ici on se connecte au serveur
$connexion=mysql_pconnect(SERVEUR,LOGIN,PASS) or die("la connexion au serveur  à échoué" );



//ici on se connecte à la base de données
$base=mysql_select_db(BASE,$connexion)  or die("la connexion à la base  à échoué");




//ici on insiste sur le fait qu'on voudrait toutes nos données encodées en utf
mysql_query("SET NAMES UTF8");
$annee_naissance=mysql_real_escape_string($_POST['annee_naissance']);
		  $annee=mysql_real_escape_string($_POST['annee']);
			$nom=mysql_real_escape_string($_POST['nom']);
           $pays=mysql_real_escape_string($_POST['pays']);
		 $prenom=mysql_real_escape_string($_POST['prenom']);
		 $resume=mysql_real_escape_string($_POST['resume']);
		  $titre=mysql_real_escape_string($_POST['titre']);
	  


		  /*on test les genre choisi l'action à effectuer*/
		  
		   echo "<hr/><h2> \n";
		  
		  if(isset($_POST['inserer']))   {echo "Insertion du film  $titre éffectuée avec succès.";}
		  
	elseif(isset($_POST['modifier']))  	 {echo "Modification  du film  $titre effectuée avec succès.";}
	elseif(isset($_POST['detruire']))  	 {echo "Votre demande de destruction du film  $titre à été validée.";}

		 
		  
		 //on test le genre choisi 
		 
		 
		 if(!isset($_POST['genre']))   {$genre=array();}
		else{$genre=$_POST['genre'];}
	 
		  echo "</h2><hr/>";
		  //affichage des données
		   echo "Titre: $titre <br/> Année: $annee <br/> Pays: $pays <br/> \n";
		  
 //preparation des données pour insertion
		  
		   
		   $resultat_genre=" "; $separateur= " ";
		  for($i=0;$i<count($genre);$i++)
			  {
			   
			  $resultat_genre .= $genre[$i] .$separateur;
			  $separateur=",";
			  }
			  
		    echo "Genre : $resultat_genre   <br/>\n";
		    echo "Resumé: $resume <br/>\n";
		    echo "mise en scène par: $nom $prenom <br/>\n";
		    
			
			


		
			if(isset($_POST['inserer']))
			 $requete="INSERT INTO films(titre,annee,nom_realisateur,prenom_realisateur,pays,genre,resume). 
			                               VALUES('$titre','$annee ','$nom ','prenom ','$pays ','$resultat_genre ','$resume ')";
	       elseif(isset($_POST['modifier']))
			$requete="UPDATE films SET titre='$titre',annee='$annee ',nom_realisateur='$nom ',pays='$pays ',
			genre='$resultat_genre ',resume='$resume ',WHERE titre='$titre'";
			
                                                            		 
																	
          elseif(isset($_POST['detruire']))$requete="DELETE films   WHERE titre='$titre'";
														
									 	

 	$resultat_final=mysql_query($requete);					
									
						if(isset($resultat_final)){echo'<br/><b style="color:green;">Requete effectuée </b>';}					
			
		              else{ echo 'une erreur est survenue  :'.mysql_error($resultat_final);}
		 

?>











cordialement.
Salut,
Sur l'UPDATE tu as une virgule de trop avant le WHERE.
Tu as un message d'erreur sur tes requêtes ?
il y a marqué quoi ? "requête effectué" ou "une erreur est survenue" ?

Que vaut la variable $requete à la fin de ton script ?

Essaie d'isoler un peu mieux ton problème.

Note : mets bien partout dans tes boucles et tes conditions les accolades.
modifie le code à la fin :

if(isset($resultat_final)){


par


if($resultat_final){


Tu devrais voir avec ça maintenant une erreur.