PHP vrienden,

Ik zit met het volgende:

Een for .... lus is als volgt opgebouwd:

for ($so=0; $so<count($idso); $so++) {

nu is mijn vraag, of het ook mogelijk is om de inhoud van een variable als volgt op te nemen:

for ($so = $loop; $so<count($idso); $so++) {

Bij mij werkt het niet, wel als ik $loop vervang door 151.
Is hier een oplossing voor??

Alvast bedankt.
Je hebt $loop wel vooraf een waarde gegeven? Dit zou namelijk gewoon moeten werken:
<?php
$loop = 151;
for($so = $loop; $so < count($idso); $so++)
{
// Doe je ding
}
?>
En als je $loop ook meteen wil laten oplopen gebruik je &$loop
$loop wordt ook gezet, met het volgende:

$rest = $loop - $max-results; echo "Blijft over: $rest";?></br><?
$gevondensongs = $rest;
$loop = $rest;?></br><?
Als je er zeker van wil zijn dat je $loop echt iets bevat kun je dan ff echo $loop doen voor de lus ? En als je meer wilt weten is het handig je volledige code te posten, waar het omgaat, dus het zetten van $loop inclusief de loop
Wat ik wil bereiken is het volgende:

Ik zoek in mijn database en wil het resultaat weergeven.
Als er meer dan 30 resultaten zijn, moet het op een volgende pagina worden weergegeven worden.

P.S.

De eerste keer (Pagina 1) laat hij correct zien

Nu de code waarin ik het (tracht) weer te geven:

<?php
if(mysql_num_rows($result) > 0){ // Alleen tabel laten zien als er iets gevonden is
	mysql_free_result($result1);
?>
<br />
  <table border="0" cellspacing="3">
		<tr>
		<td><p class="header">Song name</p></td>
		<td><p class="header">Playtime</p></td>
		<td><p class="header">Album name</p></td>
		<td><p class="header">Artist name</p></td>
		</tr>
		<?php
		echo "Totaal gevonden: $so"; ?></br><? echo "Results is: $max_results"; ?></br><?
		$total_pages = ceil($count/$max_results);
		echo "Aantal pagina's: $total_pages"; ?></br></br><?
		echo "PAGINA: $pagina";?></br><?

		if ($pagina == 1) {
			$gevondensongs = $count;
			for ($so=0; $so<count($idso); $so++) {
				if ($tel < $max_results) {// Maximaal 30 zoekresultaten laten zien
					echo "Teller: $so";?>
					<tr>
					<td><p class="value1"><?php echo $song_naam[$so]; ?></p></td>
					<td><p class="value"><?php echo $song_playtime[$so]; ?></p></td>
					<td><p class="value1"><a href="index.php?section=search_songs&idal=<?php 	echo $idal[$so]; ?>"><?php echo $album[$so]; ?></a></p></td>
					<td><p class="value"><?php echo $artname[$so]; ?></p></td>
					</tr><?php 
					$tel = $tel + 1;
					echo "IDSO: $idso[$so]";
				}
			}
		}

		?></br></br><?
		$loop = $gevondensongs - $max_results;

		if ($pagina > 1) {
			for ($so = $loop; $so<count($idso); $so++) {
				if ($tel < $max_results) {// Maximaal 30 zoekresultaten laten zien
					echo "Teller: $so";?>
					<tr>
					<td><p class="value1"><?php echo $song_naam[$so]; ?></p></td>
					<td><p class="value"><?php echo $song_playtime[$so]; ?></p></td>
					<td><p class="value1"><a href="index.php?section=search_songs&idal=<?php 	echo $idal[$so]; ?>"><?php echo $album[$so]; ?></a></p></td>
					<td><p class="value"><?php echo $artname[$so]; ?></p></td>
					</tr><?php 
					$tel = $tel + 1;
					echo "IDSO: $idso[$so]";
				}
			}
		}

		$rest = $loop - $max-results; echo "Blijft over: $rest";?></br><?
		$gevondensongs = $rest;
		$loop = $rest;?></br><?
		?>
	</table>
<?php
// teken een lijn
?>
<hr> 
<?php
}else{?>
	<span class="kop"><?php
	echo "Sorry, no results found.";?>
	<?php
// teken een lijn
	?>
	<hr>
	</span>
	<p class="kop"> 
	  <?php
	}
echo "Totaal gevonden: $count";?><p></p><?php

$total_pages = ceil($count/$max_results);

for($i = 1; $i <= $total_pages; $i++){
if(($page) == $i){
echo'['.$i.']';
}else{                   
echo "<a href='test.php?page=$i'>$i</a> ";
} }
echo '<br>Page '.$page.' of '.$total_pages;
//echo '</span>';

mysql_close($connection);
	?>
</p>
</div>
Heb je $loop nou al eens geëchot net voordat je je for-loop begin? Zo ja, wat kwam daar uit dan?
$loop heb ik ge-echo, voor if ($pagina > 1) {, en het antwoord is 181, druk ik dan op Page[2] (om de volgende pagina weer te geven) dan is $loop -30 geworden ipv 151.
Goed, daar zit dus je probleem. Nu je weet waar je moet zoeken, kun je proberen uit te vinden waarom dat gebeurt en wat je eraan zou kunnen doen...

Reageren