PDA

Volledige versie bekijken : php stopt met parsen door mysql?


cyrano
%Europe/Berlin %924 %2010, 23:11
hallo ik heb even hulp nodig met het maken van een javascript array die bestaat uit mysql results.

De mysql results komen er wel te staan maar de javascript en eind tags komen niet in beeld.


<script language="javascript" type="text/javascript">
var images = new Array(
<?php
$query = mysql_query("SELECT * FROM `sponsors` ORDER BY RAND()");
while($ro2 = mysql_fetch_object($query)or die(mysql_error()))
{
echo "'cms/uploads/".$ro2->title."',\n";
}
?>
'img/x1.jpg'
);
</script>
</body>
</html>
dit retourneerde

<script language="javascript" type="text/javascript">
var images = new Array(
'cms/uploads/Preview.jpg',
'cms/uploads/03-Trebor_06.png',

daar zou dus nog dit
'img/x1.jpg'
);
</script>
</body>
</html>bij onder moeten maar die worden op een of andere manier niet geparsed.

sorry voor het mischien kortaf overkomen maar ik heb alles nagezocht op google, en kan het niet vinden :(
en het probleem is ook dat mijn hosting error report uit heeft staan en die krijg ik ook niet anders ingesteld :@


error_reporting(E_ALL);
ini_set("display_errors", 1);
//werkt niet


alvast bedankt.

BernardV
%Europe/Berlin %010 %2010, 01:15
Haal die or die() maar uit je while loop.
Want nu loopt hij dus door totdat $ro = fetch false is en dan doet hij een die.

In een vergelijking zoals deze doe je eigenlijk while(voorwaarde1 of voorwaarde2)
die() is geen mogelijke voorwaarde, want dat is een instructie (om het simpel te zeggen).
De $ro2 = fetch is wel een voorwaarde, want deze geeft "null" terug als fetchen niet meer mogelijk is.
Laat het nu zo zijn dat als de eerste voorwaarde goed is wordt er niet gekeken naar de tweede voorwaarde, dus de die wordt voor elk record niet uitgevoerd. Pas als je aan het einde van je loop bent ziet hij een null op je $ro2 toewijzing en gaat dan kijken of je tweede voorwaarde wel voldoet. Bij het kijken naar de tweede voorwaarde voert hij de die functie uit en is het einde script.

cyrano
%Europe/Berlin %767 %2010, 19:25
Ik weet niet of ik precies heb gedaan wat je bedoelde :s
maar ik heb dus de 'or die' eruit gehaald en hij werkt nu.

Bedankt. [8D]