kan er iemand mij zeggen wat er fout is aan deze code?
Er staat in de database:
-poll1
-poll2
En hij haalt op:
-poll1
-poll1
hij geeft dus het aantal goed weer, maar hij geeft de eerste (of laatste, ligt aan "ORDER BY...") weer.
Ik kijk er wrs over heen.
ivm de mysqli-extensie: ik gebruik deze vrijwel altijd, en ik denk niet dat het dus daar aan ligt.
<?php
$dbc = @mysqli_connect("localhost","root","","breenet") or trigger_error(mysqli_error());
$q = "SELECT * FROM poll_values WHERE poll_ID = '1' ORDER BY pvalue_ID DESC";
$r = mysqli_query($dbc,$q);
$results = mysqli_fetch_array($r,MYSQLI_ASSOC);
do {
echo $results['subject']."<br />";
} while (mysqli_fetch_array($r,MYSQLI_ASSOC));
?>
<?php
$dbc=@mysqli_connect("localhost","root","","breenet") or trigger_error(mysqli_error());
$q="SELECT * FROM poll_values WHERE poll_ID = '1' ORDER BY pvalue_ID DESC";
Ik heb dat geprobeerd, maar dan doet hij hetzelfde. echter haalt hij bij enkel een while-statement er zelfs 1 te weinig op.
Stel dus er zitten 4 polls in:
dan haalt hij bij do-while:
- poll1
- poll1
- poll1
- poll1
(dus wel 4 keer, maar 4 keer de eerste)
en bij while:
- poll1
- poll1
- poll1
de fout zit allereerst al in de do - while structuur, want het script gaat eerst de code uitvoeren wat na de do staat en gaat dan pas checken op wat bij de while staat dus u statement wordt altijd 1 keer uitgevoerd
nope, het werkt nu helemaal niet.
De pagina blijft zelfs laden...
daarjuist werkte het wel, ik meen het, heel raar.
Het enige dat ik heb aangepast is style="..." eraan toegevoegd.
EDIT: ligt het soms aan de mysqli??? In principe wil ik wel omschakelen, maar ik ben mysqli nu gewoon (hoewel er idd weinig verschil is tussen mysql en mysqli).
Is er onlangs een update op de server uitgevoerd, is er misschien een tabel record die corrupt is ?
Maak eens een dummy tabel aan, doe wat data in, en probeer die data te weergeven. Als de data goed weergegeven wordt, ligt het niet aan de database server. Gebeurt hetzelfde, dan zul je eens contact op moeten nemen met je host.
Het is niet mijn online host (die is pas actief vanaf midden juli) maar mijn localhost die (misschien) corrupt is.
Ik heb op de localhost (wampserver 2) zo'n dummy tabel aangemaakt, data wordt weergegeven maar verkeerd. Ik ga dus wampserver eens opnieuw installeren.
Hopelijk werkt het.
Ligt het niet aan dat je WHERE poll_ID = '1' in je query hebt staan?
Wat ik ook niet begrijp is dat je errors wilt onderdrukken door de @ te gebruiken, maar wel een trigger_error wilt? (misschien weet ik daar dan weer niet genoeg vanaf)
zonder dat werkt het ook niet.
Ik heb een poll (POLL_ID = 1) en dan 4 verschillende opties die allemaal in de kolom POLL_ID de waarde 1 hebben.
Daar kan het volgens mij dus niet aan liggen.