in reply to SQL While loop problem.

Relevant lines from your code:

@row4 = $sth4->fetchrow_array(); ($nsgno, $type, $id, $stocknox, $date) = @row4; ####################################### #########Output########################### print "<strong>Stock No - $stocknox : $make $model $bodytype $reg NSG +Ref - $nsgno - Salvage Rack Location $sublocation </strong><br>"; while (@row4 = $sth4->fetchrow_array()) {

You fetch the first row before you enter the while loop, and then enter the while loop by fetching the next row. This will cause your problem. ;) You will either need to remove the @row4 = $sth4->fetchrow_array(); that is outside the loop (and therefore have to deal with that print statement inside the loop somehow) or print the first image outside the loop while you have the data.

Another option would be to change the while loop to:

while (@row4 != 0) { ... # Your code here. @row4 = $sth4->fetchrow_array(); }

Thereby only doing the 'fetch' at the end of the loop, and just checking for success.

Replies are listed 'Best First'.
Re^2: SQL While loop problem.
by dmsparts (Sexton) on Jan 28, 2011 at 14:06 UTC
    Thanks for the help, got rid of the initial fetch and hey presto.
    Regards. Michael