Help erreur connexion bdd

Configuration : Windows Xp Pro , Firefox 3.6.3, Google Chrome , IE8 , WampServer 2.0

Bonjour, je suis en train de mettre au point un moteur de recherche dans ma base de données . Le principe est qu'avec différents test je concatene des chaines afin d'etablir ma requete finale selon les critères selectionné , et systématiquement lorsque j'essaie d'effectuer ma requete j'ai : Erreur 324 (net::ERR_EMPTY_RESPONSE) : Erreur inconnue , en debuguant j'ai finis par isoler la section ou ça bug , voici mon code :

<?php	 
		require("connexion.php");
		$nom=$_POST['nom'];
		$a=false;
		$prenom=$_POST['prenom'];
		$b=false;
		$Institution=$_POST['Institution'];	
		$c=false;
		$mail=$_POST['mail'];	
		$d=false;
		$tel=$_POST['tel'];
		$e=false;
		$adresse=$_POST['adresse'];
		$f=false;
		$cp=$_POST['cp'];
		$g=false;
		$ville=$_POST['ville'];
		$h=false;
		$clientde=$_POST['clientde'];
		$j=false;
		$annee=$_POST['annee'];	
		$k=false;
		$l=false;
		$m=false;
		$n=false;
		$o=false;
		$p=false;
		$q=false;
		$r=false;
		$s=false;
		
//On init la requete SQL 
		$req = "SELECT * FROM clients,profession,personnel WHERE clients.Institution=profession.num 
		AND clients.clientde=personnel.num AND ";				 
//Si le champ de formulaire n'est pas vide, on l'ajoute à la requete
		if($nom != '')
		{
			$req =$req . "clients.nom ='$nom' AND ";
			$a=true;
		}
		if($prenom != '')
		{
			$req =$req . "clients.prenom = '$prenom' AND ";
			$b=true;
		}
		if($mail != '')
		{
			$req =$req . "clients.mail ='$mail' AND ";
			$c=true;
		}
		if($annee != '')
		{
			$req =$req . "clients.annee = '$annee' AND ";
			$d=true;
		}
//Cas particuliers pour les checkbox.
//Les checkbox
		if(isset($_POST['prof']))
		{
			$req =$req . "profession.libelle ='$Institution' AND ";
			$e=true;
		}
		if(isset($_POST['fixe']))
		{
			if($tel!= '')
			{
			$req =$req . "clients.Telfixe = '$tel' AND ";
			$f=true;
			}
		}
		if(isset($_POST['fax']))
		{
			if($tel!= '')
			{
			$req =$req . "clients.fax = '$tel' AND ";
			$g=true;
			}
		}
		if(isset($_POST['portable']))
		{
			if($tel!= '')
			{
			$req =$req . "clients.Telportable = '$tel' AND ";
			$h=true;
			}
		}
		if(isset($_POST['normal']))
		{	
			if($adresse != '')
			{
				$req =$req . "clients.adresse1 = '$adresse' AND ";
			$j=true;
			}
			if($cp != '') 
			{
				$req =$req . "clients.cp = '$cp' AND ";
			$k=true;
			}
			if($ville != '') 
			{
				$req =$req . "clients.ville = '$ville' AND ";
			$l=true;
			}
		}
		if(isset($_POST['fact']))
		{	
			if($adresse != '')  
			{
				$req =$req . "clients.adrfact = '$adresse' AND "; 
			$m=true;
			}
			if($cp != '')   
			{
				$req =$req . "clients.cpfact = '$cp' AND "; 
			$n=true; 
			}
			if($ville != '') 
			{
				$req =$req . "clients.villefact = '$ville' AND ";
			$o=true;  
			}
		}
		if(isset($_POST['chant']))
		{	
			if($adresse != '')
			{
				$req =$req . "clients.adrchant = '$adresse' AND "; 
			$p=true;
			}
			if($cp != '')
			{
				$req =$req . "clients.cpchant = '$cp' AND ";  
			$q=true;
			}
			if($ville != '')
			{
				$req =$req . "clients.villechant = '$ville' AND ";
			$r=true;
			}
		}
//Si aucun champ n'a été rempli, on les affiche tous
		if($req == "SELECT * FROM clients,profession,personnel WHERE clients.Institution=profession.num 
		AND clients.clientde=personnel.num AND ")
		{
			$req = "SELECT * FROM clients,profession,personnel WHERE clients.Institution=profession.num 
		AND clients.clientde=personnel.num ";
			$s=true;			
		}			
//On enleve un éventuel "AND" de fin de requete et le . du fin d'affichage
	if($req[strlen($req) - 2] == 'D')			
			$req = substr($req, 0, strlen($req) - 4);				
		echo "<table>";
		//A decommenter si on veut debuguer
		//echo $req;			 
		$i = 0; /*Une variable pour compter                         
les deux lignes suivantes sont la source du bug !!!!*/
		$jeu=@mysql_query($req); 
	while($ligne=mysql_fetch_array($jeu))
	{
				$i=$i+1;
				//si la requete est celle par defaut : affichage par defaut
				if ($s)
				{
				echo'<tr><td>'.$ligne["Civilite"].'</td>
				<td>'.'<td>'.$ligne["Nom"].'</td>
				<td>'.'<td>'.$ligne["Prenom"].'</td>
				<td>'.'<td>'.$ligne["libelle"].'</td>
				<td>'.'<td>'.$ligne["Telfixe"].'</td>
				<td>'.'<td>'.$ligne["Telportable"].'</td>
				<td>'.'<td>'.$ligne["Fax"].'</td>
				<td>'.'<td>'.$ligne["Mail"].'</td>
				<td>'.'<td>'.$ligne["Adresse1"].'</td>
				<td>'.'<td>'.$ligne["ville"].'</td>
				<td>'.'<td>'.$ligne["cp"].'</td>
				<td>'.'<td>'.$ligne["adrfact"].'</td>
				<td>'.'<td>'.$ligne["villefact"].'</td>
				<td>'.'<td>'.$ligne["cpfact"].'</td>
				<td>'.'<td>'.$ligne["adrchant"].'</td>
				<td>'.'<td>'.$ligne["villechant"].'</td>
				<td>'.'<td>'.$ligne["cpchant"].'</td>
				<td>'.'<td>'.$ligne["personne"].'</td>
				<td>'.'<td>'.$ligne["annee"].'</td>
				</td></tr>';
				}
				// sinon affichage "personalisé"
				else
				{
					$tab='<td>'.$ligne["Civilite"].'</td>';
					if ($a)
					{
						$tab=$tab.'<td>'.$ligne["Nom"].'</td>';
					}
					if ($b)
					{
						$tab=$tab.'<td>'.$ligne["Prenom"].'</td>';
					}
					if ($c)
					{
						$tab=$tab.'<td>'.$ligne["Mail"].'</td>';
					}
					if ($d)
					{
						$tab=$tab.'<td>'.$ligne["annee"].'</td>';
					}
					if ($e)
					{
						$tab=$tab.'<td>'.$ligne["libelle"].'</td>';
					}
					if ($f)
					{
						$tab=$tab.'<td>'.$ligne["Telfixe"].'</td>';
					}
					if ($g)
					{
						$tab=$tab.'<td>'.$ligne["Fax"].'</td>';
					}
					if ($h)
					{
						$tab=$tab.'<td>'.$ligne["Telportable"].'</td>';
					}
					if ($j)
					{
						$tab=$tab.'<td>'.$ligne["adresse1"].'</td>';
					}
					if ($k)
					{
						$tab=$tab.'<td>'.$ligne["ville"].'</td>';
					}
					if ($l)
					{
						$tab=$tab.'<td>'.$ligne["cp"].'</td>';
					}
					if ($m)
					{
						$tab=$tab.'<td>'.$ligne["adrfact"].'</td>';
					}
					if ($n)
					{
						$tab=$tab.'<td>'.$ligne["villefact"].'</td>';
					}
					if ($o)
					{
						$tab=$tab.'<td>'.$ligne["cpfact"].'</td>';
					}
					if ($p)
					{
						$tab=$tab.'<td>'.$ligne["adrchant"].'</td>';
					}
					if ($q)
					{
						$tab=$tab.'<td>'.$ligne["villechant"].'</td>';
					}
					if ($r)
					{
					$tab=$tab.'<td>'.$ligne["cpchant"].'</td>';
					}
					if($tab[strlen($tab) - 1] == '>')
					{
						$tab=$tab."'";
					}
					echo '<tr>'.$tab.'</tr>';
				}
	}
//On affiche les résultats dans un tableau
		
		echo '</table><div id=res>Votre recherche a '.$i.' résultats</div>';
		mysql_close(); // Deconnexion
	?>


Pourtant en debuguant j'ai testé mes requetes avec phpmyadmin et elles sont bonnes !

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Hello,

    Tente :
    $jeu= mysql_query($req) || die(mysql_error());

    Si une erreur mysql apparait, elle sera affichée, ce sera alors plus simple de connaître la source du problème plutôt que de lire tout ton code PHP assez long et "occulte"
    1. ayant cherché ailleurs entre temps , j'ai essayé comme on me l'as conseillé d'utiliser easy php et ho surprise , mon code fonctionne parfaitement sous ce logiciel , mais perci de ta reponse mrgeek , je mémorise pour de futurs erreurs (que je ne manquerais pas de faire =D )