Vinnaren i pepparkakshustävlingen!
2022-01-14, 23:24
  #1
Avstängd
Kod:
$result $conn->query($sql);

if (
$result->num_rows 0) {
  
// output data of each row
  
while($row $result->fetch_assoc()) {
    echo 
$row["test"];
  }
} else {
  echo 
"0 results";


När jag kör den här koden så får jag följande resultat.

100

Kör jag koden igen får jag följande resultat.

100100

Alltså sparas den gamla resultatet och ny resultat läggs till.

Hur gör jag så att resultatet visas endast 1 gång alltså.

100
Citera
2022-01-14, 23:27
  #2
Avstängd
Löste

SELECT DISTINCT
Citera
2022-01-15, 00:45
  #3
Medlem
Enterprises avatar
Citat:
Ursprungligen postat av TrixNe
Löste

SELECT DISTINCT

Det verkar inte som någon intuitiv förklaring att Select Distinct avhjälper det fel som du tog upp i TS.
Men vi vet ju å andra sidan inte ett skvatt om den databas som du kör frågan emot.
Citera
2022-01-16, 10:24
  #4
Moderator
vhes avatar
Ja, ditt "problem" är alltså att svaret på din SQL-fråga har flera rader. Din kod anstränger sig explicit för att skriva ut samtliga rader. Det är det while-loopen gör.

Du bör fundera över vilken data du har i din databas, vilken du egentligen vill ha ut och hur frågan du ställer bör formuleras. Det är helt ärligt rätt sällan distinct är rätt lösning, men det finns så klart sådana fall.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback