maggaz Skrevet 27. februar 2010 Del Skrevet 27. februar 2010 (endret) Heisann, jeg og en kompis holder på med et mafia script, der kom vi over forumet som vi fant en feil på. Det som er feil er at om en skal poste en ny post så blir ikke posten postet. Her er php coden: <?php $forum_get_threads = 'gen_forum'; $forum_get_replies = 'gen_forum_svar'; $nosticky = $SQL->query("SELECT * FROM `$forum_get_threads` WHERE `sticky`='nei' AND `slettet`='nei'"); $issticky = $SQL->query("SELECT * FROM `$forum_get_threads` WHERE `sticky`='ja' AND `slettet`='nei'"); $stickyimg = "<img src=\"grafikk/sticky.png\" alt=\"Sticky\">"; if($div->level($id) >= 2 && !empty($_GET['tom'])){ $SQL->query("UPDATE `gen_forum` SET `slettet`='ja' WHERE `slettet`='nei' AND `sticky`='nei'"); $div->redirect('index.php?valg=genforum','1'); } if(isset($_POST['slettmerk']) && $div->level($id) >= 2){ $ids = $_POST['slettid']; echo $ids; if(empty($ids)){ //$div->redirect('index.php?valg=genforum','0'); } else { foreach($ids AS $ID){ $SQL->query("UPDATE `gen_forum` SET `slettet`='ja' WHERE `id`='$ID'"); } } } if($div->level($id) >= 2){ ?> <form action="" method="post"> <? } ?> <table> <tr> <th colspan="<? if($div->level($id) >= 2){ echo '5'; } else { echo '4'; } ?> ">Generelt forum</th> </tr> <tr> <th>Tittel</th> <th>Skrevet av</th> <th>Lest</th> <th>Siste svar</th> <? if($div->level($id) >= 2){ ?><th>Slett</th><? } ?></tr> <?php while($sticky = mysql_fetch_object($issticky)){ echo "\n\t<tr>\n\t\t<td class=\"sticky\">".$stickyimg." <a href=\"index.php?valg=genforumles&id=".$sticky->id."\" title=\"Les tråden ".$sticky->tittel."\">".$sticky->tittel."</td>\n\t\t<td class=\"sticky\"><a href=\"index.php?valg=visprofil&bruker=".addslashes($sticky->skrevetav)."\" title=\"Vis profil\">".addslashes($sticky->skrevetav)."</a><br><small>".$sticky->dato."</small></td>\n\t\t<td class=\"sticky\">Kommer</td>\n\t\t<td class=\"sticky\">kommer</td>"; if($div->level($id) >= 2){ echo "\n\t\t<td class=\"sticky\"><input type=\"checkbox\" name=\"slettid[]\" value=\"".$sticky->id."\">"; } echo "\n</tr>"; } while($nos = mysql_fetch_object($nosticky)){ echo "\n\t<tr>\n\t\t<td><a href=\"index.php?valg=genforumles&id=".$nos->id."\" title=\"Les tråden ".$nos->tittel."\">".$nos->tittel."</td>\n\t\t<td><a href=\"index.php?valg=visprofil&bruker=".addslashes($nos->skrevetav)."\" title=\"Vis profil\">".addslashes($nos->skrevetav)."</a><br><small>".$nos->dato."</small></td>\n\t\t<td>Kommer</td>\n\t\t<td>kommer</td>"; if($div->level($id) >= 2){ echo "\n\t\t<td><input type=\"checkbox\" name=\"slettid[]\" value=\"".$sticky->id."\">"; } echo "\n</tr>"; } ?> <tr> <td colspan="<? if($div->level($id) >= 2){ echo '5'; } else { echo '4'; } ?> "> <a href="index.php?valg=skrivtrad&forum=gen" title="Lag et emne" class="submit">Opprett emne</a> - <a href="index.php?valg=minetrader" title="Mine aktive emner" class="submit">Mine aktive tråder</a> <? if($div->level($id) >= 2){ ?> <br> <a href="index.php?valg=genforum&tom=ja" title="Tøm forum" class="submit">Tøm forum</a> - <input type="submit" name="slettmerk" value="Slett merkede" class="submit"> <? } ?> </td> </tr> </table> <? if($div->level($id) >= 2){ ?> </form> <? } ?> Post tråd <?php $forum = addslashes($_GET['forum']); $sql2 = $SQL->query("SELECT * FROM `brukere` WHERE `id`='$id'"); $r2 = mysql_fetch_object($sql2); if($forum == "gen"){ $for = addslashes($r2->gjeng); } elseif($forum == "ot"){ $for = "ot"; } elseif($forum == "generelt"){ $for = "generelt"; } elseif($forum = "gen_forum"){ $for = "Du skriver i Generelt Forum"; } else { $div->redirect('index.php','0'); } echo $for; if(isset($_POST['skriv'])){ $qrysperr = $SQL->query("SELECT * FROM `sperrer` WHERE `id`='$id' AND `sperre`='forum'"); $sprerow = mysql_fetch_object($qrysperr); $venter = $sprerow->neste - $time; $neste = $time + 120; echo $for; if($sprerow->neste > $time && $div->level($id) == 1){ echo "Du må vente <span id=\"vent\">$venter</span> sekunder før du kan svare/skrive på forumet igjen!"; } elseif(empty($_POST['tittel']) || empty($_POST['tekst'])){ echo "Du må fylle ut alle felt!"; } else { $sql1 = sprintf("INSERT INTO `gen_forum` SET `tittel`=%s, `skrevetav`=%s, `tekst`=%s, `slettet`=%s, `sticky`=%s, `dato`=%s, `forum`=%s", $sec->qs($_POST['tittel']), $sec->qs($bruker), $sec->qs($_POST['tekst']), $sec->qs('nei'), $sec->qs($_POST['stick']), $sec->qs($dato), $sec->qs($for)); $SQL->query($sql1); // or die('Error: '.mysql_error()); $SQL->query("INSERT INTO `sperrer` SET `id`='$id', `sperre`='forum', `neste`='$neste'"); echo "Tråden er opprettet!"; } } $out = NULL; $out = "\n<form action=\"index.php?valg=skrivtrad&forum=".$_GET['forum']."\" method=\"post\">\n\t<table>\n\t\t<tr>\n\t\t\t<th colspan=\"2\">Opprett tråd</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td>Tittel:</td>\n\t\t\t<td><input type=\"text\" name=\"tittel\" class=\"input\"></td>\n\t\t</tr>\n\t\t"; if($div->level($id) >= 2){ $out .= "\n\t\t<tr>\n\t\t\t<td>Sticky:</td>\n\t\t\t<td><input type=\"radio\" name=\"stick\" value=\"ja\">Ja -<input type=\"radio\" name=\"stick\" value=\"nei\">Nei</td>\n\t\t</tr>"; } $out .= "\n\t\t<tr>\n\t\t\t<td>Tekst:</td>\n\t\t\t<td><textarea name=\"tekst\" cols=\"35\" rows=\"8\" class=\"textarea\"></textarea></td>\n\t\t</tr>"; $out .= "\n\t\t<tr>\n\t\t\t<td><input type=\"submit\" name=\"skriv\" value=\"Skriv\" class=\"submit\"></td>\n\t\t\t<td><a href=\"index.php?valg=genforum&akt=vis\" title=\"Vis Forum\">Vis Forum</a></td>\n\t\t</tr>"; $out .= "\n\t</table>\n</form>"; echo $out; ?> Database Greiene -- -- Tabellstruktur for tabell `gen_forum` -- CREATE TABLE IF NOT EXISTS `gen_forum` ( `id` bigint(255) NOT NULL auto_increment, `tittel` varchar(255) collate latin1_general_ci NOT NULL, `skrevetav` varchar(255) collate latin1_general_ci NOT NULL, `dato` varchar(255) collate latin1_general_ci NOT NULL, `tekst` mediumtext collate latin1_general_ci NOT NULL, `sticky` enum('ja','nei') collate latin1_general_ci NOT NULL, `slettet` enum('ja','nei') collate latin1_general_ci NOT NULL, `sisteav` varchar(255) collate latin1_general_ci NOT NULL, `sistedato` varchar(255) collate latin1_general_ci NOT NULL, `lest` bigint(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=3 ; -- -- Dataark for tabell `gen_forum` -- -- -------------------------------------------------------- -- -- Tabellstruktur for tabell `gen_forum_svar` -- CREATE TABLE IF NOT EXISTS `gen_forum_svar` ( `id` bigint(255) NOT NULL auto_increment, `svarid` bigint(255) NOT NULL, `skrevetav` varchar(255) collate latin1_general_ci NOT NULL, `dato` varchar(255) collate latin1_general_ci NOT NULL, `tekst` mediumtext collate latin1_general_ci NOT NULL, `slettet` enum('ja','nei') collate latin1_general_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=1 ; -- -- Dataark for tabell `gen_forum_svar` -- Det var alle tingene innenfor forumet. Endret 28. februar 2010 av maggaz Lenke til kommentar
sxxxe83 Skrevet 27. februar 2010 Del Skrevet 27. februar 2010 Sett på <code> </code> tag, som gjør det "litt" enklere å lese koden Lenke til kommentar
maggaz Skrevet 27. februar 2010 Forfatter Del Skrevet 27. februar 2010 Glemte det, beklager ^^, Lenke til kommentar
BeFs Skrevet 27. februar 2010 Del Skrevet 27. februar 2010 Får du noe error? Eller skjer det ingen ting? Lenke til kommentar
maggaz Skrevet 27. februar 2010 Forfatter Del Skrevet 27. februar 2010 Det er ingen error, det kommer at posten har blitt postet, men den har ikke blitt laget på forumet. Lenke til kommentar
BeFs Skrevet 27. februar 2010 Del Skrevet 27. februar 2010 Nå er det mulig jeg kikket litt for fort igjennom. Men jeg finner kun to checkboxer og en knapp? Lenke til kommentar
maggaz Skrevet 27. februar 2010 Forfatter Del Skrevet 27. februar 2010 Kunne du hjulpet med og fikset forumet? Lenke til kommentar
Thomas. Skrevet 28. februar 2010 Del Skrevet 28. februar 2010 Ehh, forventer du at den koden skal sette inn info i databasen/"poste ny post"? Tips 1: Lær deg å programmere selv. Tips 2: Post riktig kode. Lenke til kommentar
SniKaZ Skrevet 28. februar 2010 Del Skrevet 28. februar 2010 (endret) Slik jeg ser det har du vell ikke koblet til en database? da er det ikke rart det ikke funker. Du må jo først koble php filen opp mot en database for at du skal kunne vise innlegget etterpå. EDIT: Om du ikke har gjort dette/ikke vet hvordan så er det vell egentlig pointless å lage mafia script, siden mye av det som er i et mafia spill må jobbe opp mot en database. Endret 28. februar 2010 av SniKaZ Lenke til kommentar
maggaz Skrevet 28. februar 2010 Forfatter Del Skrevet 28. februar 2010 Det er kobla opp til en database da... Lenke til kommentar
Thomas. Skrevet 28. februar 2010 Del Skrevet 28. februar 2010 Det er kobla opp til en database da... Ja, det er flott. Men post hele scriptet, ikke kun det som viser forumet. Blir mye lettere å hjelpe, da. Lenke til kommentar
maggaz Skrevet 28. februar 2010 Forfatter Del Skrevet 28. februar 2010 Det er kobla opp til en database da... Ja, det er flott. Men post hele scriptet, ikke kun det som viser forumet. Blir mye lettere å hjelpe, da. Hva mener du med det? Det er hele scriptet til forumet. Du trenger ikke mer enn det? Lenke til kommentar
Runar Skrevet 28. februar 2010 Del Skrevet 28. februar 2010 Hva mener du med det? Det er hele scriptet til forumet. Du trenger ikke mer enn det? Hvis koden du postet er hele "forumet" er det ikke rart det ikke fungerer. Vet du i det hele tatt hva den koden gjør? Har du skrevet den selv? Lenke til kommentar
maggaz Skrevet 28. februar 2010 Forfatter Del Skrevet 28. februar 2010 Hva mener du med det? Det er hele scriptet til forumet. Du trenger ikke mer enn det? Hvis koden du postet er hele "forumet" er det ikke rart det ikke fungerer. Vet du i det hele tatt hva den koden gjør? Har du skrevet den selv? Det er ikke jeg som har coda, det er en venn av meg. Lenke til kommentar
Runar Skrevet 28. februar 2010 Del Skrevet 28. februar 2010 Det er ikke jeg som har coda, det er en venn av meg. Da spør du vennen din pent hvor resten av koden er. Det du har postet er kun en liten del av koden for å vise tråder, samt avgjøre om de er annonseringer (sticky) eller ikke. Den har ingenting med lagring av nye innlegg å gjøre. Lenke til kommentar
maggaz Skrevet 28. februar 2010 Forfatter Del Skrevet 28. februar 2010 Ifølge han er det hele coden, han coda den selv og han sier det er en liten feil en plass men han finner ikke det ut, så jeg vet ikke. Lenke til kommentar
SniKaZ Skrevet 28. februar 2010 Del Skrevet 28. februar 2010 (endret) Ifølge han er det hele coden, han coda den selv og han sier det er en liten feil en plass men han finner ikke det ut, så jeg vet ikke. Så innleggene blir lagret i en database? EDIT: Du har jo ingen INSERT INTO og sånt i den koden der, så ser ikke helt hvordan de forum innleggene du legger inn skal bli lagret. Til dere som kan litt mer en meg, er det noe i hele tatt i den koden der som faktisk har noe med å lagre innlegg? Endret 28. februar 2010 av SniKaZ Lenke til kommentar
BeFs Skrevet 28. februar 2010 Del Skrevet 28. februar 2010 Det er jo helt feil fil... Fila du lurer på heter "skrivtrad". genforum viser jo bare frem genereltforumet. Jeg skjønner egentlig ingen ting av koden, hvor er $sql1 og $sql2 definert? Du får lime inn så får noen andre se også. Lenke til kommentar
maggaz Skrevet 28. februar 2010 Forfatter Del Skrevet 28. februar 2010 Her er skriv tråd coden. <?php $forum = addslashes($_GET['forum']); $sql2 = $SQL->query("SELECT * FROM `brukere` WHERE `id`='$id'"); $r2 = mysql_fetch_object($sql2); if($forum == "gen"){ $for = addslashes($r2->gjeng); } elseif($forum == "ot"){ $for = "ot"; } elseif($forum == "generelt"){ $for = "generelt"; } elseif($forum = "gen_forum"){ $for = "Du skriver i Generelt Forum"; } else { $div->redirect('index.php','0'); } echo $for; if(isset($_POST['skriv'])){ $qrysperr = $SQL->query("SELECT * FROM `sperrer` WHERE `id`='$id' AND `sperre`='forum'"); $sprerow = mysql_fetch_object($qrysperr); $venter = $sprerow->neste - $time; $neste = $time + 120; echo $for; if($sprerow->neste > $time && $div->level($id) == 1){ echo "Du må vente <span id=\"vent\">$venter</span> sekunder før du kan svare/skrive på forumet igjen!"; } elseif(empty($_POST['tittel']) || empty($_POST['tekst'])){ echo "Du må fylle ut alle felt!"; } else { $sql1 = sprintf("INSERT INTO `gen_forum` SET `tittel`=%s, `skrevetav`=%s, `tekst`=%s, `slettet`=%s, `sticky`=%s, `dato`=%s, `forum`=%s", $sec->qs($_POST['tittel']), $sec->qs($bruker), $sec->qs($_POST['tekst']), $sec->qs('nei'), $sec->qs($_POST['stick']), $sec->qs($dato), $sec->qs($for)); $SQL->query($sql1); // or die('Error: '.mysql_error()); $SQL->query("INSERT INTO `sperrer` SET `id`='$id', `sperre`='forum', `neste`='$neste'"); echo "Tråden er opprettet!"; } } $out = NULL; $out = "\n<form action=\"index.php?valg=skrivtrad&forum=".$_GET['forum']."\" method=\"post\">\n\t<table>\n\t\t<tr>\n\t\t\t<th colspan=\"2\">Opprett tråd</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td>Tittel:</td>\n\t\t\t<td><input type=\"text\" name=\"tittel\" class=\"input\"></td>\n\t\t</tr>\n\t\t"; if($div->level($id) >= 2){ $out .= "\n\t\t<tr>\n\t\t\t<td>Sticky:</td>\n\t\t\t<td><input type=\"radio\" name=\"stick\" value=\"ja\">Ja -<input type=\"radio\" name=\"stick\" value=\"nei\">Nei</td>\n\t\t</tr>"; } $out .= "\n\t\t<tr>\n\t\t\t<td>Tekst:</td>\n\t\t\t<td><textarea name=\"tekst\" cols=\"35\" rows=\"8\" class=\"textarea\"></textarea></td>\n\t\t</tr>"; $out .= "\n\t\t<tr>\n\t\t\t<td><input type=\"submit\" name=\"skriv\" value=\"Skriv\" class=\"submit\"></td>\n\t\t\t<td><a href=\"index.php?valg=genforum&akt=vis\" title=\"Vis Forum\">Vis Forum</a></td>\n\t\t</tr>"; $out .= "\n\t</table>\n</form>"; echo $out; ?> Lenke til kommentar
SniKaZ Skrevet 28. februar 2010 Del Skrevet 28. februar 2010 Her er skriv tråd coden. <?php $forum = addslashes($_GET['forum']); $sql2 = $SQL->query("SELECT * FROM `brukere` WHERE `id`='$id'"); $r2 = mysql_fetch_object($sql2); if($forum == "gen"){ $for = addslashes($r2->gjeng); } elseif($forum == "ot"){ $for = "ot"; } elseif($forum == "generelt"){ $for = "generelt"; } elseif($forum = "gen_forum"){ $for = "Du skriver i Generelt Forum"; } else { $div->redirect('index.php','0'); } echo $for; if(isset($_POST['skriv'])){ $qrysperr = $SQL->query("SELECT * FROM `sperrer` WHERE `id`='$id' AND `sperre`='forum'"); $sprerow = mysql_fetch_object($qrysperr); $venter = $sprerow->neste - $time; $neste = $time + 120; echo $for; if($sprerow->neste > $time && $div->level($id) == 1){ echo "Du må vente <span id=\"vent\">$venter</span> sekunder før du kan svare/skrive på forumet igjen!"; } elseif(empty($_POST['tittel']) || empty($_POST['tekst'])){ echo "Du må fylle ut alle felt!"; } else { $sql1 = sprintf("INSERT INTO `gen_forum` SET `tittel`=%s, `skrevetav`=%s, `tekst`=%s, `slettet`=%s, `sticky`=%s, `dato`=%s, `forum`=%s", $sec->qs($_POST['tittel']), $sec->qs($bruker), $sec->qs($_POST['tekst']), $sec->qs('nei'), $sec->qs($_POST['stick']), $sec->qs($dato), $sec->qs($for)); $SQL->query($sql1); // or die('Error: '.mysql_error()); $SQL->query("INSERT INTO `sperrer` SET `id`='$id', `sperre`='forum', `neste`='$neste'"); echo "Tråden er opprettet!"; } } $out = NULL; $out = "\n<form action=\"index.php?valg=skrivtrad&forum=".$_GET['forum']."\" method=\"post\">\n\t<table>\n\t\t<tr>\n\t\t\t<th colspan=\"2\">Opprett tråd</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td>Tittel:</td>\n\t\t\t<td><input type=\"text\" name=\"tittel\" class=\"input\"></td>\n\t\t</tr>\n\t\t"; if($div->level($id) >= 2){ $out .= "\n\t\t<tr>\n\t\t\t<td>Sticky:</td>\n\t\t\t<td><input type=\"radio\" name=\"stick\" value=\"ja\">Ja -<input type=\"radio\" name=\"stick\" value=\"nei\">Nei</td>\n\t\t</tr>"; } $out .= "\n\t\t<tr>\n\t\t\t<td>Tekst:</td>\n\t\t\t<td><textarea name=\"tekst\" cols=\"35\" rows=\"8\" class=\"textarea\"></textarea></td>\n\t\t</tr>"; $out .= "\n\t\t<tr>\n\t\t\t<td><input type=\"submit\" name=\"skriv\" value=\"Skriv\" class=\"submit\"></td>\n\t\t\t<td><a href=\"index.php?valg=genforum&akt=vis\" title=\"Vis Forum\">Vis Forum</a></td>\n\t\t</tr>"; $out .= "\n\t</table>\n</form>"; echo $out; ?> Det der kan ikke vere hele koden, om det er det, så mangler dere mye. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå