[PHP] Affichage d'un tableau

Résolu/Fermé
LeHigh Messages postés 109 Date d'inscription mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 - 3 juin 2009 à 10:48
LeHigh Messages postés 109 Date d'inscription mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 - 5 juin 2009 à 15:41
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 dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
3 juin 2009 à 13:56
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 dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
5 juin 2009 à 15:10
$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 dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
3 juin 2009 à 11:55
$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 mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
3 juin 2009 à 13:42
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 mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
3 juin 2009 à 14:27
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 dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
3 juin 2009 à 14:30
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 mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
3 juin 2009 à 14:37
toujours rien ne s'affiche :/
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
3 juin 2009 à 15:02
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 mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
3 juin 2009 à 15:07
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 dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
3 juin 2009 à 15:14
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 mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
3 juin 2009 à 15:18
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 dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
3 juin 2009 à 15:29
essayes en remplaçant:

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

par
<BODY> 
0
LeHigh Messages postés 109 Date d'inscription mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
3 juin 2009 à 15:43
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 mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
4 juin 2009 à 08:30
Personne ne verrait pourquoi j'ai ce problème la ?
0
LeHigh Messages postés 109 Date d'inscription mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
4 juin 2009 à 10:27
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 mardi 12 mai 2009 Statut Membre Dernière intervention 6 septembre 2013 1
5 juin 2009 à 15:41
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