Poster intet ud i browseren?

Tags:    sql mysqli mysql php

Hej :)

Jeg vil gerne vise nogle bestemte artikler ud fra en defineret kategori, men det lykkedes ikke.

Jeg har to tabeller.
- Topics
- posts

Koden ser sådan her ud:
Fold kodeboks ind/udKode 


JEg kan dog ikke se, hvad der er forkert i sql-koden?

Siden den ikke gider hente artiklen?

På forhånd tak for hjælpen :)



6 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 15 karma
Sorter efter stemmer Sorter efter dato
Vil klart sige du skal lave din kode sådan at du kan se fejlbeskeder.
Fejlbeskederne fortæller dig præcist hvad problemet er.

Prøv med denne kode øverst i din PHP fil.
Fold kodeboks ind/udPHP kode 


Nu kender jeg ikke det du gør i den kode men lad os sige du bruger en funktion som xxx().
Der er mange funktioner som returner FALSE hvis de ikke virker.

Det kan du så teste med...
Fold kodeboks ind/udPHP kode 


eller...

Fold kodeboks ind/udPHP kode 


Og det er også en god ide kun at vise sådan nogen fejlbeskeder til dig som laver hjemmesiden og ikke til brugerne.
Til brugeren kan du skrive at der gik noget galt men de har jo ikke brug for at vide i hvad fil og hvad linie der gik noget galt på.

Det er i hvert fald en rigtig god ide og få styr på det med fejl beskeder du får brug for det rigtig meget, jo bedre du laver det jo lettere er det for dig at rette fejl i fremtiden.

Og hvis der sker fejl på hjemmesiden når brugerene bruger den så kan du have en fil hvor alle fejlbeskederne bliver gemt i men uden at brugerne får vist dem så kan du af og til kigge i den fil på dit webhotel og se om der er problemer.

Fold kodeboks ind/udPHP kode 




"undefined index" betyder at du prøver at bruge et index i et array som ikke findes. Altså der er ikke sat nogen værdi til det index.

$_GET er et array som indenholder de data man skriver i URL adressen når du besøger en side og skriver et ?-tegn efter filnavnet og noget mere. For eksempel :
http://example.com/mappe/filnavn.php?page=minside.html
Hvis du besøgte den side så ville $_GET['page'] indeholde "minside.html".
Det er ligesom at du selv laver et array sådan her :

Fold kodeboks ind/udPHP kode 


Prøv og ændre det til ...
Fold kodeboks ind/udPHP kode 

Så virker det også selvom page ikke er sat.

Din kode giver fejlbesked fordi du tester om værdien er tom/false/0, men værdien er slet ikke sat så derfor giver det fejl at teste på værdien... fordi der er ikke nogen værdi.

Du kunne sige det er ligesom hvis du har en tom pose så kan du spørge en anden person om posen er tom og personen kigger i posen og siger ja den er tom. Men hvis du ikke har nogen pose og spørger personen om posen er tom så er det så at personen ville give en fejlbesked fordi posen findes slet ikke.

Læs i øvrigt PHP manualen du kan både bruge den online eller downloade den. Den er rigtig rigtig god : http://www.php.net/docs.php



Indlæg senest redigeret d. 04.04.2012 17:00 af Bruger #13010
hvor langt kommer du i koden?

smider PHP nogle fejl?

Bruger du fejlrapportering?
error_reporting(E_ALL) og ini_set('display_errors',1);



Er $minimum og $limit sat? Ellers er du måske ude i en LIMIT 0,0



Altså, der bliver udpostet kategoriens navn og beskrivelse, men stopper der, hvor artiklerne skal vises.

Jeg brugte:
Fold kodeboks ind/udKode 

Hvor fejlen kommer: Notice: Undefined index: page in /home/www/xxx.dk/artikelkategori.php on line 69

Fejlen fører videre til:
Fold kodeboks ind/udKode 


Jeg forstår ikke helt præcis fejlen? hvad betyder Notice: Undefined index: page in ?


$minimum og $limit er defineret korrekt :)



Tak for hjælpen. Det rettede en fejl, som virkede..

Endnu engang tak for hjælpen :)



Indlæg senest redigeret d. 04.04.2012 17:14 af Bruger #15747
t