2010-06-11 6 views
3

Partie I - Résolu. Salut, J'essaye d'imprimer quelques valeurs sur l'écran d'une table mais j'ai un problème, je ne sais pas beaucoup de chaîne, de vecteur et de tableau mais je pense que mon problème est lié à eux.php mysql erreur débutant

Je reçois cela sur l'écran

Fatal error: Cannot use [] for reading ...

Mon code

$sql="SELECT * FROM $tbl_name"; 
$result=mysql_query($sql) or trigger_error(mysql_error().$sql); 
while($row = mysql_fetch_array($result)){ 
$DATA = $row[]; } //line with probelm 
mysql_close(); 

//html part 

<table> 
<? foreach($DATA as $row): ?> 
<tr> 
<td><?=$row['id']?></td> 
//more stuff 
</tr> 
<? endforeach ?> 
</table> 

Ce que je suis en train de faire est somevalues ​​d'impression forment une base de données. Mais je reçois cette erreur.

Je suis désolé pour toute erreur en anglais, et merci d'avance pour toute aide.

Partie II - Edité

Ok, semble comme la partie de MySQL fonctionne, je l'ai utilisé auparavant le code html. mysql_close(); echo "".$DATA[0][0];

Pour voir si elle fonctionne et imprimer la bonne valeur. Mais ma partie html ne s'imprime pas correctement.

<html> 
<body> 
<h1>Lista de usuários</h1> 
<table> 
<? foreach($DATA as $row): ?> 
<tr> 
<td><?=$row['id']?></td> 
<td><?=$row['nome']?></td> 
//more stuff like this 
</tr> 
<? endforeach ?> 
</table> 
</body> 
</html> 

Pouvez-vous m'aider? Je suis désolé pour toute erreur en anglais, et merci d'avance pour toute aide.

+0

Seulement parce que j'ai été brûlé par cela dans le passé ... vous pouvez utiliser Jason

Répondre

3

Utilisation:

$DATA = array(); 
... 
while($row = mysql_fetch_array($result)) { 
    $DATA[] = $row; 
} 

L'opérateur [] est utilisé pour ajouter une ligne, ce qui est ce que nous voulons faire à $ DATA. Cela signifie qu'il n'apparaîtra jamais du côté droit d'une déclaration d'affectation.

+0

Salut, j'ai une autre question et j'ai édité ma question pourrait prendre un autre regard s'il vous plaît? Merci d'avance. – Marcelo

+0

Le meilleur aurait été d'accepter cette réponse et de commencer une nouvelle question. Je pense que votre problème peut résider dans le fait qu'il n'y a pas; après l'endforeach. – Arkh

0

Pour la partie 2, en tant que commentateur suggéré, supprimez <? et <?= et utilisez <?php et <?php echo à la place. Si cela ne résout pas le problème, veuillez poster l'erreur/réponse inattendue que vous recevez.

+0

Je n'obtenais aucun message d'erreur, juste les données n'étaient pas imprimées. J'étais ce problème avec ' Marcelo