Problème d'affichage d'un tableau (ordre dans les colonnes)
merchou
Messages postés
16
Statut
Membre
-
Pitet Messages postés 2845 Statut Membre -
Pitet Messages postés 2845 Statut Membre -
Bonjour à tous !
Je suis débutant en PHP, je fais une petite application, elle doit afficher les résultats attendus sous forme de tableau. Elle affiche ces résultats, mais y insère une colonne vide comme suit :
Bref il insère une colonne vide à partir de la deuxième ligne jusqu'à la fin, et crée un décalage dans tout le tableau.
Voici mon code:
Je ne comprends pas le pourquoi.
S'il vous plait aidez moi.
Merci d'avance.
Je suis débutant en PHP, je fais une petite application, elle doit afficher les résultats attendus sous forme de tableau. Elle affiche ces résultats, mais y insère une colonne vide comme suit :
[table]
[tr]
[td]N°Ligne[/td]
[td]MDN[/td]
[td]AKY[/td]
[td]PUK1[/td]
[td]ESN1[/td]
[td]MEID[/td]
[td]IMSI[/td]
[/tr]
[tr]
[td]1[/td]
[td]353[/td]
[td][/td]
[td]354[/td]
[td]355[/td]
[td]356[/td]
[td]357[/td]
[td]358[/td]
[/tr]
[tr]
[td]2[/td]
[td]232[/td]
[td][/td]
[td]233[/td]
[td]234[/td]
[td]235[/td]
[td]236[/td]
[td]237[/td]
[/tr]
[/table]
Bref il insère une colonne vide à partir de la deuxième ligne jusqu'à la fin, et crée un décalage dans tout le tableau.
Voici mon code:
<?php
set_time_limit(0);
error_reporting(E_ALL ^ E_NOTICE);
set_time_limit(0);
mysql_connect('localhost','root','');
mysql_select_db('gestnum');
//On ouvre le fichier en question (en lecture seule)
$handle = fopen("fichierabo.txt", "r");
$i=0;
echo '<h3 style="font-style: italic; font-size: 22px; text-shadow:Arial black 2.1px 2.1px 0px; color: green;">Tous les Résultats</h3>';
echo '<table border>';
echo '<tr>';
echo '<th> N°Ligne</th>';
echo '<th> MDN testé</th>'; // a répété autant de fois que de colonne
echo '<th> AKY attaché</th>';
echo '<th> PUK1 attaché</th>';
echo '<th> ESN1 attaché</th>';
echo '<th> MEID attaché</th>';
echo '<th> IMSI attaché</th>';
echo '</tr>';
while ($data = fgetcsv($handle, 1000, ",")) {
//on ne récupère que les 7 derniers caractères de chaque ligne avec la fonction substr
$rest = substr($data[0],-8);
//On établie une requéte qui ne remonte que les MDN finissant par les 7 derniers chiffre de notre $rest. Un seul résultat remonte donc...
$sql = mysql_query('SELECT * FROM 'coordab' WHERE 'MDN' LIKE "%'.$rest.'"');
$result =mysql_fetch_array($sql);
$i++;
//on affiche les résultats demandés
$mdn=$data[0];
echo '<tr>';
echo '<td>'.$i.'</td>';
echo '<td>'.$data[0].'<td/>';
echo '<td>'.$result['AKY'].'</td>';
echo '<td>'.$result['PUK1'].'</td>';
echo '<td>'.$result['ESN1'].'</td>';
echo '<td>'.$result['MEID'].'</td>';
echo '<td>'.$result['IMSI'].'</td>';
echo '</tr>';
}
echo '</table>';
fclose($handle);
//header('Location: resultatsgestfichab.php?info=chars');
?>
Je ne comprends pas le pourquoi.
S'il vous plait aidez moi.
Merci d'avance.
1 réponse
-
Salut,
A priori, c'est tout simplement que la valeur $result['AKY'] est vide.
Essaye d'afficher ton tableau $result pour vérifier ses données.
Bonne journée-
La valeur de $result['AKY'] est décalé vers $result['PUK1'] et $result['PUK1'] est décalé vers
$result['ESN1'] et ainsi de suite ce qui crée une colonne de plus.
Comme suit:
N°Ligne-------MDN-----AKY------ PUK1----ESN1----MEID-----IMSI--
---1--------------353------------------354------355-------356------ 357-------358
---2--------------232------------------233------234-------235------ 236-------237
Je ne sais pas pourquoi. Regardez encore et aidez moi. -
-