17. august 2005 - 16:46Der er
28 kommentarer og 1 løsning
Hjælp til mit forum
Jeg er begyndt at lave et forum og det hele virker skam. Intil videre kan man skrive en besked og den bliver gemt i min database sammen med overskriften. Jeg har så en tabel der hedder forum med de to felter: overskrift og besked og ja, du kan vel selv gætte hvad de står for :)
Nu skal jeg så have lavet følgene på forsiden:
Hvis der er skrevet nogle beskeder kommer de selvfølgelig frem på forsiden. Der vil kun komme overskriften, men det skal være et link. Det link skal så føre til selve beskeden. men hvordan kan det med at overskriften skal blive et link gøres ?
Altså det i skal hjælpe mig med er:
Jeg skal have lavet en side hvor ALLE overskrifter blive vist (men som et link) det link skal så føre hen til selve beskeden.
Så kommer følgene fejl: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /web/www/frac/users/fora/index.php on line 5
// her tjekker vi om man overhovdet har trykket på submit knappen if($_POST[submit]) {
if($_POST[overskrift] == "" OR $_POST[besked] == "") { print "Et eller flere felter mangler at blive udfyldt!"; print "<br/><br/>";
}else{
mysql_query("INSERT INTO forum (overskrift, besked) VALUES ('$_POST[overskrift]', '$_POST[besked]')") or die(mysql_error()); print "Beskeden blev nu gemt!"; print "<br/><br/>";
Nå, det fandt jeg selv ud af.. Nu bliver overskriften vist som et link og har adressen www.sidenavn.dk/forum.phpid="" Jeg har også oprettet rækken ID i min tabel men nu skal det hele forbindes.. det eneste jeg mangler er at hver besked skal have sit eget nummer (ID)
Skal jeg ikke bare tilføje ID i den linie som tilføje de forskellige ting i min mysql databasen ?
Altså denne linie:
mysql_query("INSERT INTO forum (overskrift, besked) VALUES ('$_POST[overskrift]', '$_POST[besked]')") or die(mysql_error());
den linie : mysql_query("INSERT INTO forum (overskrift, besked) VALUES ('$_POST[overskrift]', '$_POST[besked]')") or die(mysql_error());
lader du være som den er, og sørger for at feltet ID i din tabel er sat til auto_increment under ekstra... dette kan gøres fra din phpmyadmin eller hvad du nu bruger.. så skulle det være som det skal..
mon ik du så skulle bede gandso om at smide et svar, så han kan få sine velfortjente point ;-)
har du et id på alle dine indlæg i forummet ? hvis ikke, så syns jeg du skulle tømme din db og oprette et par stykker, så kan jeg ikke længere se nogen grund til at det ikke virker :D
self.. virker det ik, så er de point en anden sag, men kan ik lige finde noget der gør det ik skulle virke
Synes godt om
Slettet bruger
18. august 2005 - 15:27#13
Gu' fanden virkede mit svar. Jeg spurgte jo tilmed om du nu havde husket at alle felterne passede med dine egne. ;)
Hehe.. Jamen gandso.. jeg fik det ikke til at virke.. sorry hvis det er mig den er gal med, men det virkede ikke.. derimod fik jeg hjælp af en anden på experten.. vo har nemlig hindandes msn.. han sagde dette script skulle bruges: <? include "mysql.php";
$hent = mysql_query("select * from forum order by id desc") or die(mysql_error()); while($foo = mysql_fetch_array($hent)) { echo "<a href=\"forum.php?id=".$foo[id]."\">$foo[overskrift]</a><br><hr><br>"; }
?>
Det virker også.. nu mangler jeg kun at få et unikt ID på alle mine beskeder og overskrifter (ved ikke om der er brugt for det på overskrifterne ?) Så jeg kan få linket til at virke..
De links der kommer frem står overskrifterne på.. det virker skam fint, men når man klikker på dem skal beskeden jo komme frem.. men det kan kun gøres hvis jeg for et id på hver besked ?
Synes godt om
Slettet bruger
18. august 2005 - 16:00#15
-aco-: gider du vise mig de store forskelle på hans og mit script? :))))
dét at jeg skrev hver enkelt felt der skulle udskrives hvor han tager alle på en gang med "Select * from", det gjorde jeg blot fordi man kan udnytte de folk der bruger "select * from"'s systemer, hvilket de ikke kan hvis man skriver hver enkelt felt.
Ok, ved ikke det store om det så jeg undskylder.. ;)
Men kunne du hjælpe mig med at tildele hver enkelt besked og overskrift (hvis det er nødvendigt) et unikt ID ? har lavet ID rækken i min database skal bare tildele det til beskeden og overskriften så vil det hele virke :)
Synes godt om
Slettet bruger
18. august 2005 - 16:11#17
hvis du bare sætter dit id-felt i databasen til auto_increment, og sletter alle trådene der findes lige nu, og starter forfra.
Hmm.. den er sat til auto increment.. kan da også lige slette trådene så snart frac.dk kører igen.. så kan jeg komme ind på phpmyadmin igen.. :)
Ok, men skal jeg ikke indsætte ID i den linie der indsætter diverse ting i databasen ? denne linie: mysql_query("INSERT INTO forum (overskrift, besked) VALUES ('$_POST[overskrift]', '$_POST[besked]')") or die(mysql_error());
Synes godt om
Slettet bruger
18. august 2005 - 16:14#19
næh :)
det klarer den selv. hver gang en ny række bliver oprettet får den et nyt nummer, så det skal der ikke php-kode til.
Nu har jeg så selv fundet ud af hvad der var galt :P ID var skrevet med småt i koden men med stort i databasen.. nu har jeg fået ID i mine links og mine overskrifter.. men når man klikker kommer beskeden ikke frem.. det er selvfølgelig fordi jeg ikke har lavet det.. hvordan gøres det ?
Det kommer jo an på hvordan du plejer og se dine tråde. Hvis du ikke før har haft et id, så kan jeg vidst ikke gætte mig til hvordan du får dem vist :)
Ellers er der intet.. jo en mysql fil men den for du ikk brug for ;)
Mangler bare at få beskeden vist når man har klikket på linket som sagt ;)
Synes godt om
Slettet bruger
18. august 2005 - 17:03#25
Så har du heller ikke lavet et forum. Så må du lave et nyt spørgsmål og spørge om hjælp til et forum. Du har blot lavet opret besked og oversigt over beskederne.
Hvis det skal blive til et forum mangler du en del ;)
er ikke det man lige forbinder med et forum, men.. nej det er ikke svært at f¨vist den besked...
på din forum.php indsætter du følgende:
<? if(isset($_REQUEST[id])){ $sql = mysql_fetch_array(mysql_query("select overskrift, besked from forum where id = '$_REQUEST[id]'"))or die(mysql_error());
echo "overskrift:". $sql[overskrift]. "<br>Besked:". $sql[besked]; } ?> Det er ikke testet på nogen måde, og du skal nok kontrollere felter for tryg fejl og om store/små bogstaver er korrekte... men noget i den stil...
Synes godt om
Slettet bruger
18. august 2005 - 17:25#28
strange: det bliver det jo stadig ikke et forum af :D
-aco-: opret et nyt spørgsmål om hjælp til et forum, eller søg efter et på google!
Virkede ikke.. men synes også at i har ret.. opretter en ny tråd med det jeg mangler.. takker.. Dit svar er accepteret gandso ;)
Synes godt om
Ny brugerNybegynder
Din løsning...
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.