Archief - PHP: mysql_fetch_arry()

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

D@ Mick

Legacy Member
Hey,

ik ben begonnen aan het herdesignen van mijn website. Om alles vlot te laten verlopen doe ik alles lokaal. Daarom heb ik PHP5.0.5 + Mysql 4.1.7 geïnstalleerd. Op de webserver zelf draaid PHP4.3.10 + Mysql 3.23.49.

Aan de php code zelf heb ik niets veranderd. Maar lokaal gezien krijg ik nu een fout op mijn mysql_fetch_array(): supplied argument is not a valid MySQL result source.

Dit vind ik echter een beetje bizar aangezien het op de webserver wel lukt. De code ziet er als volgt uit:

PHP:
for($i=1; $i <= count($type); $i++) {
	$Opdracht[$i] = "SELECT TID,Titel,DATE_FORMAT(Datum, '%d-%m-%Y') AS Datum FROM tutorials WHERE Type='".$type[$i]."'"; 
	$query[$i] = mysql_query($Opdracht[$i]);
	echo mysql_errno() ; // -> retourneerd altijd 0 bij elke query, dus de query klopt. heb de query ook al laten uitvoeren door phpMyAdmin en die lukte ook.

}

...


	<?php }
	for($i=1; $i <= count($type); $i++) {
	?>
<div class="main_top"><span class="orange"><?php echo $subsubcategorie[$i]; ?> </span><span class="gray">bij Netronix</span></div>
<div class="main_rule"></div>  
<div class="main_content">
<table width="100%" cellspacing="0" border="0">
	<tr class="titelbar">
		<td class="titel">Titel</td>
		<td class="datum">Datum</td>
		<td class="pdf">PDF</td>
	</tr>
	<?php
	$y=1;
		while($Output = mysql_fetch_array($query[$i])) {
			echo "<tr class=\"lijn"; echo ($y % 2) ? "1\">" : "0\">";
			echo "<td>";
			echo "<a href=\"tutorial.php?TID=".$record['TID']."\">".$Output['Titel']."</a></td>";
			echo "<td>".$Output['Datum']."</td>";
			echo "<td><a href=\"#\" onclick=\"window.open('".$rootdir."scripts/download.php?TID=".$Output['TID']."','link','naam','width=450, height= 500, toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,screenX=0,screenY=0,top=0,left=0');return false;\">Download</a></td>";
			echo "</tr>";
			++$y;
		}
	?>
</table>

Normaal gesproken zijn er geen fouten in de code. Want als ik alles upload naar de webserver werkt alles perfect. Dus volgens mij is er misschien een verandering gebeurt in PHP5 waardoor er iets hoeft gewijzigd te worden aan mijn php code, het enige probleem is dat ik niet weet wat :(

Iemand een id? Alvast bedankt op voorhand

PerfectPC

Legacy Member
hier kunnen veel dingen de oorzaak van zijn:
- is de MySQL extensie wel geactiveerd in PHP? (of eventueel MySQLi)
- connecteert ge op de juiste methode naar uw MySQL server? (juiste host, database, login, password, ...)

verwijder verder die mysql_errno() en maak van het lijntje erboven:
$query[$i] = mysql_query($Opdracht[$i]) or die (mysql_error());

;)

D@ Mick

Legacy Member
ik conntecteer op de juiste manier en de mysql extensie is geactiveerd.

Queries op andere pagina's lukken zonder probleem.

[EDIT] Het probleem is dus opgelost. blijkbaar was er een conflict tussen variabelen. Toch bedankt [/EDIT]
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan