[PHP] Affichage d'un tableau

Résolu
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   -  
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je dois afficher un tableau avec comme comme informations juste les numéros de série et d'inventaires d'ordinateurs, au préalable on peut également trier ces numéros avec un petit formulaire.
Le problème est que rien ne s'affiche :/

Je vous passe le code :

La page PHP qui permet d'afficher le tableau

<?php
session_start();
?>
<HTML>
<HEAD>
</STYLE>
<LINK REL="stylesheet" HREF="../styles/dde53.css" TYPE="text/css">
</HEAD>
<BODY onload="self.print()">

<?php
global $num_inv, $num_serie;

include ('date.php');
include ('connect.php');
$idconnect = bddconnect();

if ($idconnect) {
$ok = false;

if ($num_inv != "") { $num_inv = "AND uc.num_inv_uc LIKE '%".$num_uc."%' "; $ok = true; }
if ($num_serie != "") { $garantie_uc = "AND uc.num_serie_uc LIKE '".$garantie_uc."' "; $ok = true; }

if ($ok == true )
{
$req = "SELECT num_inv_uc, num_serie_uc FROM uc";

$req .= $num_inv_uc." ";
$req .= $nom_serie_uc." ";
$req .= "ORDER BY uc.num_inv_uc";

} else { // Sinon, sélection de l'ensemble des numeros de serie/inventaire
$req = "SELECT num_inv_uc, num_serie_uc FROM uc";
}

$res = mysql_query($req) or die (mysql_error());
$num = mysql_num_rows($res);

if ($res) {
if ($num == 0) {
echo '<p>Aucun numéro de série/inventaire trouvé !!<p>';
echo '<a href="form_print_etiquette.php">Retour</a>';
} else {
echo '<table width="100%">';
echo '<tr><td width="100%" class="fondblanc_txtbleu14g" align="center">Résultat de la recherche</td></tr>';
if ($num == 1) {
echo '<tr><td width="100%" class="fondblanc_txtbleu14g" align="center">'.$num.' numéro de série/inventaire</td></tr>';
} else {
echo "$req";
echo '<tr><td width="100%" class="fondblanc_txtbleu14g" align="center">'.$num.' numéros de série/inventaire trouvées</td></tr>';
}
echo '<tr><td height="10"></td></tr>';
echo '<tr><td width="100%">';
echo '<table width="100%" border=0 cellspacing=0>';
echo '<tr class="fondjaunepale_txtbleu12g">';
echo '<td width="50%" align="center">N° du micro</td>';
echo '<td width="50%" align="center">Marque</td>';
echo '</table>';
echo '</td></tr><tr><td>';

echo '<table width="100%" border=1 cellspacing=0>';

while ($ligne = mysql_fetch_array ($res)) {
$numInv = $ligne[3];
$numSerie = $ligne[4];

//Affichage des différentes lignes du tableau
echo '<tr class="fondblanc_txtbleu12">'
echo '<td width="12.5%">'.$numInv.'</td>';
echo '<td width="13.5%">'.$numSerie.'</td>';
}

echo '</table>';
echo '</td></tr>';
echo '<tr><td height="5"></td></tr>';

echo '</table>';
echo '</form>';
}
} else {
echo 'ERREUR<p>';
echo '<a href="body.php" traget="body">Retour</a>';
}
}
?>
</body>
</html>



Et le formulaire



<form name="print_etiquette" action ="php_search_etiquette.php" method="POST">
<table width="90%" border=0 cellspacing=0>
<tr>
<td colspan="2" align="center" class="arial14bleugras">Tri des etiquettes</td>
</tr>

<tr>
<td colspan="2" height="4"></td>
</tr>
<!-- Début tableau d'identification des etiquettes -->
<table width="50%" border=0 align="center" class="fondjaunepale_txtbleu12" cellspacing=0>
<tr><td height ="7"></tr></td>
<tr>
<td align="right">N°Inventaire  </td>
<td align="left"><input type="text" name="num_inv" size=15></td>
</tr>
<tr><td height ="7"></tr></td>
<tr>
<td align="right">N°Serie  </td>
<td align="left"><input type="text" name="num_serie" size=15></td>
</tr>
<td>
<tr>
<td height=7></td>
</tr>
<!-- Boutons -->
<tr>
<td align="right"><input align="center" type="submit" name="submit" value="Rechercher"></td>
<td align="left"><input align="center"type="button" value="Abandonner" name="cancel" onClick='back()'></td>
</tr>

</table>


merci
A voir également:

16 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
essayes comme ça:

<?php
session_start();
?>
<HTML>
<HEAD>
</STYLE>
<LINK REL="stylesheet" HREF="../styles/dde53.css" TYPE="text/css">
</HEAD>
<BODY onload="self.print()">

<?php

//si le formulaire est posté:
if(isset($_POST['submit'])){
	include ('date.php');
	include ('connect.php');
	$idconnect = bddconnect();

	if ($idconnect) {
			//recup des valeurs postées par le formulaire:
			$num_inv=$_POST['num_inv'];
			$num_serie=$_POST['num_serie'];
			//construction de la requette
			$req = "SELECT num_inv_uc, num_serie_uc FROM uc";
			
			if ($num_inv != "") { $req .= " AND uc.num_inv_uc LIKE '%".$num_inv."%' "; }
			if ($num_serie != "") { $req .= " AND uc.num_serie_uc LIKE '".$num_serie."' "; }
			 
			$req .= " ORDER BY uc.num_inv_uc";
			//ne pas oublier les espaces vant AND ORDER etc..
			$res = mysql_query($req) or die (mysql_error());
			$num = mysql_num_rows($res);

		if ($res) {
			if ($num == 0) {
				echo '<p>Aucun numéro de série/inventaire trouvé !!<p>';
				echo '<a href="form_print_etiquette.php">Retour</a>';
			} else {
				echo '<table width="100%">';
				echo '<tr><td width="100%" class="fondblanc_txtbleu14g" align="center">Résultat de la recherche</td></tr>';
				if ($num == 1) {
					echo '<tr><td width="100%" class="fondblanc_txtbleu14g" align="center">'.$num.' numéro de série/inventaire</td></tr>';
				} else {
					echo "$req";
					echo '<tr><td width="100%" class="fondblanc_txtbleu14g" align="center">'.$num.' numéros de série/inventaire trouvées</td></tr>';
				}
				echo '<tr><td height="10"></td></tr>';
				echo '<tr><td width="100%">';
				echo '<table width="100%" border=0 cellspacing=0>';
				echo '<tr class="fondjaunepale_txtbleu12g">';
				echo '<td width="50%" align="center">N° du micro</td>';
				echo '<td width="50%" align="center">Marque</td>';
				echo '</table>';
				echo '</td></tr><tr><td>';

				echo '<table width="100%" border=1 cellspacing=0>';

				while ($ligne = mysql_fetch_array ($res)) {
					$numInv = $ligne[3];
					$numSerie = $ligne[4];

					//Affichage des différentes lignes du tableau
					echo '<tr class="fondblanc_txtbleu12">'
					echo '<td width="12.5%">'.$numInv.'</td>';
					echo '<td width="13.5%">'.$numSerie.'</td>';
				}

				echo '</table>';
				echo '</td></tr>';
				echo '<tr><td height="5"></td></tr>';

				echo '</table>';
				echo '</form>';
			}
		} else {
			echo 'ERREUR<p>';
			echo '<a href="body.php" traget="body">Retour</a>';
		}
	}
}
?>
</body>
</html>



Et le formulaire



<form name="print_etiquette" action ="php_search_etiquette.php" method="POST">
<table width="90%" border=0 cellspacing=0>
<tr>
<td colspan="2" align="center" class="arial14bleugras">Tri des etiquettes</td>
</tr>

<tr>
<td colspan="2" height="4"></td>
</tr>
<!-- Début tableau d'identification des etiquettes -->
<table width="50%" border=0 align="center" class="fondjaunepale_txtbleu12" cellspacing=0>
<tr><td height ="7"></tr></td>
<tr>
<td align="right">N°Inventaire  </td>
<td align="left"><input type="text" name="num_inv" size=15></td>
</tr>
<tr><td height ="7"></tr></td>
<tr>
<td align="right">N°Serie  </td>
<td align="left"><input type="text" name="num_serie" size=15></td>
</tr>
<td>
<tr>
<td height=7></td>
</tr>
<!-- Boutons -->
<tr>
<td align="right"><input align="center" type="submit" name="submit" value="Rechercher"></td>
<td align="left"><input align="center"type="button" value="Abandonner" name="cancel" onClick='back()'></td>
</tr>

</table>
1
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
$numInv = $ligne[3];
$numSerie = $ligne[4];


puisque tu utilises mysql_fetch_array tu peux remplacer [3] [4]

par le nom du champ correspondant de ta tablr c'est plus "parlant" et évite parfois des erreurs

$numInv = $ligne['numInv'];
$numSerie = $ligne['numSerie];
//par exemple
1
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
$req .= $num_inv_uc." ";
$req .= $nom_serie_uc." ";


d'où sortent ces deux variables $num_inv_uc

et $nom_serie_uc ?
0
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
ha oui je m'étais gaufré en tapant le nom de mes variables, c'est $num_inv, et $num_serie ou j'avais oublié de mettre "_uc" la fin.
Et à la place de $nom_serie_uc, c'est num_serie_uc.

Et pareil j'avais pas fait gaffe, mais dans les actions des 2 premiers if, dans la requete c'est respectivement $num_inv_uc, et $num_serie_uc

Cependant ca m'affiche toujours page blanche. :/, et je ne sais toujours pas d'où ca vient
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
Merci Alain, j'ai essayé ta solution, mais j'ai toujours une vieille page blanche qui s'affiche, donc au final je pense pas que ca vienne du code, et avant j'avais quelques problèmes de droits d'accès à des fichiers (qui faisaient exactement pareil alors que le code était bon) que mon chef a réglé ce matin. Ça pourrait encore venir de la ?
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
rajoutes cette trace:

if(isset($_POST['submit'])){
	include ('date.php');
	include ('connect.php');
	$idconnect = bddconnect();

echo "Resultat connexion base: ".$idconnect;

......

0
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
toujours rien ne s'affiche :/
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
aie!

encore qqs traces:


<?php
error_reporting(E_ALL);

//si le formulaire est posté:
echo "Appel page reussi !";
if(isset($_POST['submit'])){
echo "Formulaire poste ";
	include ('date.php');
	include ('connect.php');
	$idconnect = bddconnect();

	if ($idconnect) {

......



et dis moi ce que tu as ?
0
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
rien pour changé :/, donc ca ne vient pas du code c'est ca ?

Mais je prends note de tout ce que tu me dit, ca me servira par la suite.
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
quand ta page blanche est affichée, dans la barre d'adresse de ton navigateur tu as quoi ? quelle adresse ?
0
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
J'ai ca, et c'est pareil pour toute les pages.

http://172.27.53.13/dev_parcmicro/
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
essayes en remplaçant:

<BODY onload="self.print()">

par
<BODY> 
0
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
ca n'a rien changé non plus.
Mais le truc que je comprend pas, c'est que ces pages la sont un quasi copier coller d'autres pages qui marchent, en reprenant la même structure (j'ai juste eu besoin de supprimer/changer ce qui n'allait pas), mais la rien ne s'affiche.
0
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
Personne ne verrait pourquoi j'ai ce problème la ?
0
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
Désolé du tripeul poste, mais quand j'enlève ma boucle while (qui est censée m'afficher les infos), les traces s'affiche. donc c'est que celle ci est fausse, mais je ne vois pas ou !
0
LeHigh Messages postés 109 Date d'inscription   Statut Membre Dernière intervention   1
 
ha oui désolé j'ai réussi à résoudre mon problème, je me suis servis de ta solution, puis j'ai trouvé d'autres petites erreurs (genre pas de clause WHERE dans la requête SQL ...)

bref, merci encore Alain
0