08. september 2011 - 17:08Der er
67 kommentarer og 1 løsning
Problemer med add_answer.php
Hej alle. Jeg har et problem med min add_answer. Jeg har fuldt denne tutorail meget nøje, men når jeg prøver at poste et svar i mit forum, så siger den bare "ERROR". I kan kigge på alle filerne osv. her; http://www.phpeasystep.com/phptu/12.html
At kalde "error" ved en fejl er ikke særligt behjælpende, hverken for dig eller for os. Prøv i stedet at at kalde mysql_error og fortæl os, hvad den siger.
Jeg har opsat min database, og mine tabeller helt rigtigt. Login system, og brugersessions virker også helt fint :) Prøver lige at lave en mysql error.
Forstår ikke hvad du mener med det der pastebin? Men jeg smed det ind på view_topic.php, og der blev siden bare blank. Jeg havde skrevet det præcis som du havde skrevet (selvfølgelig inden for <? og ?> tegn)
- Når man svare på et emne, skriver den rækkefølgen forkert. Jeg har ikke nogen ORDER BY i min SELECT nej, hvorfor? Det eneste jeg har rettet på koderne fra phpeasystep er så den loader myusername, istedet for man skal skrive det, ellers er der ikke rigtig ændret noget (-:
Jeg fik ordnet det med opstillingen med en ORDER BY '$id' :)
Nu mangler jeg bare at; Folk med admin='3' skal vises med rød. Folk med admin='2' skal vises med grøn. og Folk med admin='1' skal have et skilt hvor der står 'VHT' ude foran deres brugernavn..hvordan gør jeg det? Folk med admin='0' (dvs. standarten), der skal navnet bare være sort :)
Der er to filer, det er main_forum.php - hvor der er 'oversigt' over alle emnerne, også view_topic.php - hvor man ser et emne + alle svar der er kommet i emnet.
Der er jo ikke noget admin felt, det er myusername. Den finder myusername, også udskriver den ens brugernavn i forummet. I min tabel i min database, har jeg en kolonne der hedder 'admin', det står for hvilke rettigheder man har. 3 = Admin (mig) 2 = Moderator 1 = VHT (-de skulle gerne have et gult skilt hvor der står 'VHT' ude foran deres navn) 0 = almindelig bruger.
okay, men hvis du henter admin-kolonnen med ud, skal du jo bare tjekke hvad den indeholder - og ud fra dét, sætte en style på det element der viser navnet...
Jeg ved bare ikke hvor jeg skal sætte det henne. Kan du ikke prøve at komme med et eks.? Og hvordan får jeg den til at skrive 'VHT' ud for navnet, på dem der har admin = 1 ?:)
Hvaad mener du med der ikke er nogen bruger-tabel? Det er der da? Altså jeg har selv rettet i scriptet så den henter 'myusername' istedet for man skal indtaste navnet.
- Jeg har ikke brugt 'admin' kolonnen nogen steder endnu, hvis det er det?
Nårh, det er fordi det er selv lavet, og ligger i en tabel ved navn 'members'. Vil du vide hvad det er for en? Altså det er en kolonne der hedder admin, som er på en INT(3) Skal du bruge mere information?
Du kan jo se de to tabeller fra forummet inde på phpeasystep. I min members tabel har jeg:
id int(10) myusername varchar 65) mypassword varchar(65) navn(50) alder varchar(6) email varchar(255) kon varchar(5) konto int(9) signupdate (virker så ikke som den skal. Det er blevet til 'sidst logget ind' istedet, fordi den opdatere sig selv :S ) timestamp profiletext text admin int(3) ip char(15) - Har jeg ikke fået til at virke..ved ikke hvorfor, men den gider ikke gemme ip adressen, ved oprettelse.
så vil jeg foreslå dig at smide en kolonne mere på de tabeller, som skal relatere til din members-tabel. det skal være af typen int og have værdien på det id der er hos den bruger der opretter indlægget/spørgsmålet. vi kalder den "user_id"
jeg går ud fra at du har noget login-system, der skal du så også gemme brugerens id i sessionen
når du så henter dine svar (pt har du denne sql-streng):
$sql2="SELECT * FROM $tbl_name2 WHERE question_id='$id'";
den retter du til:
$sql2="SELECT $table_name.*, m.myusername, m.admin FROM $tbl_name2 JOIN members AS m ON $tbl_name.useri_id = m.id WHERE question_id='$id'";
så har du myusername og admin felterne med ud på den bruger der har oprettet indlægget...
ja, på de poster ud zllerede har liggende i de 2 tabeller er du jo næøst til at gøre det manuelt - fremover, skal du (som jeg skrev tidligere) gemme id'et ved oprettelse af spørgsmål / svar
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.