mullberrymae Posted April 20, 2011 Share Posted April 20, 2011 this is only returning one record, when I know there are more, and it's an endless loop crashing my browser, can someone tell me how my brackets are wrong, or what is wrong? if (isset($_POST['search'])){ $keyword=$_POST['keyword']; } $sql="SELECT id, fname, lname FROM obituaries WHERE lname LIKE '%$keyword%' OR fname LIKE '%$keyword%' ORDER BY id DESC"; $results = mysql_query($sql); $num = mysql_num_rows ($results); if ($num > 0 ) { $i=0; while ($i < $num) { $id = mysql_result($results,$i,"id"); $fname = mysql_result($results,$i,"fname"); $lname = mysql_result($results,$i,"lname"); ?> <a href="view.php?id=<?php echo ($id); ?>"><?php echo($fname); ?> <?php echo($lname); ?></a> <?php } } ?> Thanks in advance Link to comment https://forums.phpfreaks.com/topic/234228-small-search-causing-endless-loop-returning-same-result/ Share on other sites More sharing options...
Muddy_Funster Posted April 20, 2011 Share Posted April 20, 2011 change while ($i < $num) { $id = mysql_result($results,$i,"id"); $fname = mysql_result($results,$i,"fname"); $lname = mysql_result($results,$i,"lname"); ?> <a href="view.php?id=<?php echo ($id); ?>"><?php echo($fname); ?> <?php echo($lname); ?></a> <?php } } to while ($row = mysql_fetch_assoc($result)) { $id = $row['id']; $fname = $row['fname']; $lname = $row['lname']; echo '<a href="view.php?id='.$id.'"><'.$fname.'> <'.$lname.'></a> '; } } Also, you could put some error capture in there to limit the loop to a count of, for example, 100. Link to comment https://forums.phpfreaks.com/topic/234228-small-search-causing-endless-loop-returning-same-result/#findComment-1203879 Share on other sites More sharing options...
mullberrymae Posted April 20, 2011 Author Share Posted April 20, 2011 Well , that ended the loop but now I am only getting one record Link to comment https://forums.phpfreaks.com/topic/234228-small-search-causing-endless-loop-returning-same-result/#findComment-1203889 Share on other sites More sharing options...
Muddy_Funster Posted April 20, 2011 Share Posted April 20, 2011 Then only one record is being returned by the query, try tweeking your sql: $sql="SELECT id, fname, lname FROM obituaries WHERE (lname LIKE '%$keyword%') OR (fname LIKE '%$keyword%') ORDER BY id DESC"; Link to comment https://forums.phpfreaks.com/topic/234228-small-search-causing-endless-loop-returning-same-result/#findComment-1203898 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.