Page 1 of 1

PHP Formatting output

Posted: Sun Nov 28, 2010 3:04 am
by gsashwin
Hi, I am trying to print my database records into a php page. I am able to succesfully print the values however the values are being duplicated. For example If I have two records in the employee_details, every these two records are being printed twice on my php page. can anyone tell me the reason why? The output that I see is as follows

7 7 3a7cf5162a9c0a5014c92021e7ca0bf0 3a7cf5162a9c0a5014c92021e7ca0bf0 Bryan Bryan 4111 4111 Admin Admin
6 6 6743c3d1519ab4f2cd9a78ab09a511bd 6743c3d1519ab4f2cd9a78ab09a511bd Raul Raul 601 W Yandell Dr, 601 W Yandell Dr, Admin Admin


<html>
<head>
</head>
<body>
<?php
mysql_connect("localhost","root","");
mysql_select_db("encryption") or die(mysql_error());
$query = mysql_query("select * from employee_details");
?>

<table>
<?php

for($counter = 0;$row=mysql_fetch_array($query); $counter++)
{
print ("<tr>");
foreach($row as $key=> $value)
print ("<td>$value</td>");
print ("</tr>");
}
?>
</table>



</body>
</html>

Re: PHP Formatting output

Posted: Sun Nov 28, 2010 6:19 am
by requinix
Read the documentation for mysql_fetch_array very carefully. Especially the Return Values section.

Re: PHP Formatting output

Posted: Sun Nov 28, 2010 6:14 pm
by icepick
Do it this way

Code: Select all


<?php
mysql_connect("localhost","root","");
mysql_select_db("encryption") or die(mysql_error());
$query = mysql_query("select * from employee_details");

$table.="<table>";


while($row=mysql_fetch_row($query) ) {
  $table.="<tr>";
  $counter=0;
  while ($row[$counter]) { 
      $table.="<td>$row[$counter]</td>";
      $counter++;
      }
  $table.="</tr>";
  }

$table.="</table>";

echo $table;

?>


Re: PHP Formatting output

Posted: Sun Nov 28, 2010 7:51 pm
by requinix
Oh, well, if we're just going to tell him what to do instead of having him learn it himself,

Code: Select all

while ($row = mysql_fetch_row($query)) {
	$table .= "<tr>";
	foreach ($row as $cell) $table .= "<td>{$cell}</td>";
	$table .= "</tr>";
}