Ik word zo langzamerhand knettergek. Ik krijg het volgende maar niet voor elkaar:
ik doe een query op een tabel en die geeft terug 0 of >0 records. In beide gevallen doe ik iets.
Code ziet er zo uit:
 
$sql=mysqli_connect('localhost','root','xx','yy');
 	$result = mysqli_query($sql,"SELECT distinct Type, Gender FROM xxx WHERE Gender='Dames' AND Category = '" . $Var . "' AND Type<>'' ORDER BY Type");

 		$recs = mysqli_num_rows($result); //tijdelijk
 		$row = mysqli_fetch_array($result);
 		
 		if ($recs == 0) {
	 		hier doe ik A....
 		}
  		else
  		{
                        hier doe ik B....
			}			
  		}
		
 	$sql->close();

Bij 1 of meer records wordt er gewoon B, echter als er 0 records zijn wordt A
nooit uitgevoerd. Wat is er fout aan de "if"??
Hulp is welkom, Ger.
Euh, je probeert met PHP (= serverside) een javascript (= clientside) uit te voeren ?

Probeer eens te debuggen met echo's in plaats van met javascript.
var_dump($recs);
Pipo Clown op 14/07/2014 17:25:02

Euh, je probeert met PHP (= serverside) een javascript (= clientside) uit te voeren ?

Probeer eens te debuggen met echo's in plaats van met javascript.

Ik wil idd een javascript uitvoeren, niet om te debuggen, maar om gebruiker een alert
te tonen. Daar is volgens mij niks mis mee, of vergis ik me nou ? M.a.w. de uitvoering na de
"if" is niet om te debuggen, maar wat er normaal in het script staat. Het probleem is echter,
dat het NIET wordt uitgevoerd !!!! wanneer de $recs-waarde 0 is !

[size=xsmall]Toevoeging op 14/07/2014 18:31:57:[/size]

Ok, de zaak lijkt opgelost, nl:
De "if" wordt wel degelijk uitgevoerd, maar de verwijzing naar het javascript lijkt niet goed.
Vreemd is wel, dat, ook al zet ik in de "if" alleen een echo er ook niets wordt getoond.
Voor diegenen, die op soortgelijke problemen stuiten: ik heb de zaak als volgt aangepast en
dat werkt:

 	<?php
 	$sql=mysqli_connect('localhost','root','','');
 	$result = mysqli_query($sql,"SELECT distinct Type, Gender FROM xxx WHERE Gender='Dames' AND Category = '" . $Var . "' AND Type<>'' ORDER BY Type");
 		$row = mysqli_fetch_array($result);
  		$recs = mysqli_num_rows($result); //tijdelijk

 		if ($recs == 0) {
	 		echo "<script type='text/javascript'>var Mystr = '$Var';
	 		location.href = 'GeenType.php?catkeuze=' + Mystr;</script>";
 		}
  		else
  		{
		
	 	mysqli_data_seek($result, 0); //ga weer naar 1e record.
 		while($row = mysqli_fetch_array($result)) {
	 			echo "<option value='" . $row['Type'] . "'>" . $row['Type'] . " </option>";
			}
			
  		}
		
 	$sql->close();
 	?>


Iedereen bedankt voor het meedenken!
gr. Ger.
De regel met $row = mysqli_fetch_array($result); staat nog steeds verkeerd.
En in de while() verderop zal je nu het eerste record missen.

Reageren