Tout ne s'affiche pas!!! a devenir fou
hmidanas
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
le père -
le père -
Bonjour,
Alors voila, j'ai un script php qui permet de lire les donnes sur une table et ensuite de les afficher, sous forme de tableau, dans une autre page. il s'agit de noms d'employes d'entreprises. le but est que le premier script affiche juste le nom de la compagnie et celui de l'employe, et ensuite pour avoir le reste des informations, il faut cliquer sur le nom de la compagnie. donc ca marchait sans trop de probleme, ca affichait les noms des entreprises et tout le reste ms en cliquant sur le nom, certaines entrees maffichent toutes les informations tandis ke dotres maffichent RIEN DU TOUT!! La table sql etant bien remplie jai reverifie avec plusieurs entrees...
je n ai pas la moindre idee d'ou ca peut venir, donc si qq a une idee, merci davance!!
Voila les scripts:
Premiere page (moteur de recherche + affichage)
<code>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>search engine</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="design_index.css" />
</head>
<body>
<?php
//search by company
//$_POST['choix'];
if(isset($_POST['requete']) && $_POST['requete'] != NULL && $_POST['choix'] != NULL)
{
mysql_connect('localhost','root','');
mysql_select_db('nasforce');
$requete = htmlspecialchars($_POST['requete']);
$kda=$_POST['choix'];
$query = mysql_query("SELECT * FROM investors WHERE $kda LIKE '%$requete%' ORDER BY id DESC") or die (mysql_error());
$nb_resultats = mysql_num_rows($query);
if($nb_resultats != 0)
{
?>
<h2> We found <?php echo $nb_resultats;
if($nb_resultats > 1) { echo ' results which are'; } else { echo 'result which is'; }
?>
</h2>
<br/><br /><br /><br />
<?php
while($donnees = mysql_fetch_array($query))
{
$name_tranmitted = $donnees[$kda];
$kda2 = $donnees['first_name'];
$kda3 = $donnees['last_name'];
?>
<a href="affichage_result_details.php? request=<?php echo $name_tranmitted;?>">
<strong><?php echo "company" ?></strong> : <?php echo $donnees['company']; ?></a>
<?php echo $kda2.$kda3; //affichage du nom et du prenom, a la suite du nom de la company. ?>
<br />
<p>
<table>
<CAPTION> Investors' information </CAPTION>
<tr>
<th>Company </th>
<th>First Name </th>
<th>Last Name </th>
<th>Prospect </th>
</tr>
<?php
while ($donnees = mysql_fetch_array($query) )
{
?>
<tr>
<td> <a href="affichage_result_details.php? request=<?php echo $name_tranmitted;?>">
<strong><?php echo "company" ?></strong> : <?php echo $donnees['company']; ?></a> </td>
<td> <?php echo $donnees['first_name'];?> </td>
<td> <?php echo $donnees['last_name'];?> </td>
<td> <?php echo $donnees['status']; ?> </td>
</tr>
</table>
<p>
<?php
}
?><br/>
<br/><br /><br /><br /><br /><br /><br /><br /><br /><br /><br>
<p>
<a href="search_engine_test.php">New Research</a>
</p>
<?php
}
else// pour cette ligne en plus jai un parse error... :(
{
?>
<p> sorry there are no such entries there </p>
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> <p> <a href="search_engine_test.php">New Research</a></p>
<?php
}
}
else
{
?>
<form action="search_engine_test.php" method="Post">
<label for="choix">Search by</label>
<select name="choix">
<option value="company">Company</option>
<option value="last_name">Last name</option>
<option value="status">Status</option>
<option value="date">Date</option>
</select>
<form action="search_engine_test.php" method="Post">
<input type="text" name="requete" size="20">
<input type="submit" value="Ok">
</form>
<?php
}
?>
</body>
</html>
<code/>
script pour laffichage des donnees:
<code>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Information writer</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="design_index.css" />
</head>
<body>
<?php
$company_name = $_GET['request'];
mysql_connect('localhost','root','');
mysql_select_db('nasforce');
$query = mysql_query("SELECT * FROM investors WHERE company ='$company_name'") or die (mysql_error());
?>
<p>
<table>
<CAPTION> Investors' information </CAPTION>
<tr>
<th>Company</th>
<th>Status</th>
<th>First Name</th>
<th>Last Name</th>
<th>Address</th>
<th>Phone number</th>
<th>Email</th>
</tr>
<?php
while ($donnees = mysql_fetch_array($query) )
{
?>
<tr>
<td><?php echo $donnees['company']; ?></td>
<td><?php echo $donnees['status']; ?></td>
<td><?php echo $donnees['first_name'];?></td>
<td><?php echo $donnees['last_name'];?></td>
<td><?php echo $donnees['address'];?></td>
<td><?php echo $donnees['phone'];?></td>
<td><?php echo $donnees['email'];?></td>
</tr>
</table>
<p>
<code/>
Merci d'avance...
Alors voila, j'ai un script php qui permet de lire les donnes sur une table et ensuite de les afficher, sous forme de tableau, dans une autre page. il s'agit de noms d'employes d'entreprises. le but est que le premier script affiche juste le nom de la compagnie et celui de l'employe, et ensuite pour avoir le reste des informations, il faut cliquer sur le nom de la compagnie. donc ca marchait sans trop de probleme, ca affichait les noms des entreprises et tout le reste ms en cliquant sur le nom, certaines entrees maffichent toutes les informations tandis ke dotres maffichent RIEN DU TOUT!! La table sql etant bien remplie jai reverifie avec plusieurs entrees...
je n ai pas la moindre idee d'ou ca peut venir, donc si qq a une idee, merci davance!!
Voila les scripts:
Premiere page (moteur de recherche + affichage)
<code>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>search engine</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="design_index.css" />
</head>
<body>
<?php
//search by company
//$_POST['choix'];
if(isset($_POST['requete']) && $_POST['requete'] != NULL && $_POST['choix'] != NULL)
{
mysql_connect('localhost','root','');
mysql_select_db('nasforce');
$requete = htmlspecialchars($_POST['requete']);
$kda=$_POST['choix'];
$query = mysql_query("SELECT * FROM investors WHERE $kda LIKE '%$requete%' ORDER BY id DESC") or die (mysql_error());
$nb_resultats = mysql_num_rows($query);
if($nb_resultats != 0)
{
?>
<h2> We found <?php echo $nb_resultats;
if($nb_resultats > 1) { echo ' results which are'; } else { echo 'result which is'; }
?>
</h2>
<br/><br /><br /><br />
<?php
while($donnees = mysql_fetch_array($query))
{
$name_tranmitted = $donnees[$kda];
$kda2 = $donnees['first_name'];
$kda3 = $donnees['last_name'];
?>
<a href="affichage_result_details.php? request=<?php echo $name_tranmitted;?>">
<strong><?php echo "company" ?></strong> : <?php echo $donnees['company']; ?></a>
<?php echo $kda2.$kda3; //affichage du nom et du prenom, a la suite du nom de la company. ?>
<br />
<p>
<table>
<CAPTION> Investors' information </CAPTION>
<tr>
<th>Company </th>
<th>First Name </th>
<th>Last Name </th>
<th>Prospect </th>
</tr>
<?php
while ($donnees = mysql_fetch_array($query) )
{
?>
<tr>
<td> <a href="affichage_result_details.php? request=<?php echo $name_tranmitted;?>">
<strong><?php echo "company" ?></strong> : <?php echo $donnees['company']; ?></a> </td>
<td> <?php echo $donnees['first_name'];?> </td>
<td> <?php echo $donnees['last_name'];?> </td>
<td> <?php echo $donnees['status']; ?> </td>
</tr>
</table>
<p>
<?php
}
?><br/>
<br/><br /><br /><br /><br /><br /><br /><br /><br /><br /><br>
<p>
<a href="search_engine_test.php">New Research</a>
</p>
<?php
}
else// pour cette ligne en plus jai un parse error... :(
{
?>
<p> sorry there are no such entries there </p>
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /> <p> <a href="search_engine_test.php">New Research</a></p>
<?php
}
}
else
{
?>
<form action="search_engine_test.php" method="Post">
<label for="choix">Search by</label>
<select name="choix">
<option value="company">Company</option>
<option value="last_name">Last name</option>
<option value="status">Status</option>
<option value="date">Date</option>
</select>
<form action="search_engine_test.php" method="Post">
<input type="text" name="requete" size="20">
<input type="submit" value="Ok">
</form>
<?php
}
?>
</body>
</html>
<code/>
script pour laffichage des donnees:
<code>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Information writer</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="design_index.css" />
</head>
<body>
<?php
$company_name = $_GET['request'];
mysql_connect('localhost','root','');
mysql_select_db('nasforce');
$query = mysql_query("SELECT * FROM investors WHERE company ='$company_name'") or die (mysql_error());
?>
<p>
<table>
<CAPTION> Investors' information </CAPTION>
<tr>
<th>Company</th>
<th>Status</th>
<th>First Name</th>
<th>Last Name</th>
<th>Address</th>
<th>Phone number</th>
<th>Email</th>
</tr>
<?php
while ($donnees = mysql_fetch_array($query) )
{
?>
<tr>
<td><?php echo $donnees['company']; ?></td>
<td><?php echo $donnees['status']; ?></td>
<td><?php echo $donnees['first_name'];?></td>
<td><?php echo $donnees['last_name'];?></td>
<td><?php echo $donnees['address'];?></td>
<td><?php echo $donnees['phone'];?></td>
<td><?php echo $donnees['email'];?></td>
</tr>
</table>
<p>
<code/>
Merci d'avance...
A voir également:
- Tout ne s'affiche pas!!! a devenir fou
- Le clavier de mon telephone ne s'affiche plus - Guide
- Ma clé usb ne s'affiche pas - Guide
- Powerpoint numéro de page ne s'affiche pas ✓ - Forum Powerpoint
- Qui veut devenir l'ami de julia ✓ - Forum Musique / Radio / Clip
- Mot de passe de plus de 8 caractère - Forum Windows
4 réponses
désolé je ne 'ai pas tout lu mais est ce que tu as testé la requete en base de donnée ?
Coté php essaye de faire des echo sur tes varariables après que la requete ait été effectuée pour voir ce qui est passé comme valeurs
Coté php essaye de faire des echo sur tes varariables après que la requete ait été effectuée pour voir ce qui est passé comme valeurs
Bonjour
Dans ton 1er script, tu utilises htmlspecialchars sur le nom de la compagnie, pas dans le second.
Si ça vient bien de là, les compagnies qui te manquent doivent être celles dont le nom comporte des lettres accentuées ou autres caractères spéciaux.
Essaye dans le second script de faire :
$company_name = htmlspecialchars($_GET['request']);
Dans ton 1er script, tu utilises htmlspecialchars sur le nom de la compagnie, pas dans le second.
Si ça vient bien de là, les compagnies qui te manquent doivent être celles dont le nom comporte des lettres accentuées ou autres caractères spéciaux.
Essaye dans le second script de faire :
$company_name = htmlspecialchars($_GET['request']);