Gå til innhold

[Løst] Den samme kodesnutten jeg har brukt på resten av nettsiden, fungerer ikke her


Anbefalte innlegg

Jeg har en nettside der jeg flere ganger kaller:

 

 $result = mysqli_query($con,"SELECT * FROM languages WHERE by=" . $_SESSION['memberID']);
 $number = 0;
while($row = mysqli_fetch_array($result)) {
echo "<input type='hidden' name='language" . $number . "' value='" . $row['name'] . "'>";
$number++;
}

 

Det er forskjellig sql-spørringer, men ellers er alt likt. Det er bare at akkurat på denne kodesnutten blir $result noe annet enn forventet.

 

Feilmeldingen er på vedlagt fil.

 

Databasen åpnes øverst i filen, og lukkes nederst.

 

Hva er galt?

post-221386-0-95822300-1365440913_thumb.png

Endret av herdon
Lenke til kommentar
Videoannonse
Annonse

Ja, du får tilbake en boolean istedenfor et resultset, står det. Kan det tenkes at verdien til og med er false? I såfall ligger det antagelig en feilmelding og venter på å bli hentet ut:

 

http://php.net/manua...ysqli.query.php

 

Har du prøvd å kjøre spørringen direkte i mysql? Da får du se eventuelle feilmeldinger på direkten.

Endret av quantum
Lenke til kommentar

Du kan legge til en if settning med is_resource() (så lenge du kjører en sql som skal returnere en resource, se quote lengre ned)

$result = mysqli_query($con,"SELECT * FROM languages WHERE by=" . $_SESSION['memberID']);
$number = 0;
if (is_resource($result)) {
   while($row = mysqli_fetch_array($result)) {
       echo "<input type='hidden' name='language" . $number . "' value='" . $row['name'] . "'>";
       $number++;
   }
}
else {
   // query feilet, håndter feil her
   echo mysqli_error($con); // bør kun brukes under debugging, fjernes for når siden går live/i produksjon. Kan være at informasjon som ikke bør være tilgjengelig for uvedkommende blir vist.
}

 

mysqli_query returerer forskjellige verdier i forhold til hva slag sql setning du kjører

Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a mysqli_result object. For other successful queries mysqli_query() will return TRUE.

Endret av Crowly
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...