Bygga ett forum

Detta är ett arkiv för phpBB2 Support, Diskussion, MODar, Stilar och översättningar. Den tillhandahålls endast för referensändamål.

Moderatorer: Moderatorgrupp, Supportgrupp

adde
Aktiv medlem
Aktiv medlem
Inlägg: 41
Blev medlem: 2003-06-25 10:18
Svar: 0
Kontakt:

Bygga ett forum

Inlägg av adde »

HEJ!!


jag undrar om nån här på detta forum skulle
kunna bygga ett forum till mig och min kompis.

vi kan inte php


om ni gör det kan ni få ha eran banner på sidan så länge sidan finns.


tyvärr ingen betalning


snälla kan nån
virtuality
Hedersmedlem
Hedersmedlem
Inlägg: 266
Blev medlem: 2003-07-21 03:37
Svar: 0
Ort: Stockholm

Inlägg av virtuality »

Följ dessa instruktioner:

Skapa en MySQL databas i phpMYadmin eller motsvarade.
Döp den dbforum.

Kör sen följande kod på den sidan där du kan skriva in egna SQL-kommandon:

Kod: Markera allt

CREATE TABLE forum(
inID mediumint AUTO_INCREMENT ,
svID mediumint default 0,
amne varchar( 45 ) ,
namn varchar( 20 ) ,
epost varchar( 20 ) ,
inlagg varchar( 255 ) ,
datum datetime,
udatum datetime,
antal_sv smallint default 0,
ip_addr varchar( 15 ) ,
PRIMARY KEY ( inID ) 
) 
När du gjort det skapar du filen start.php som ska innehålla följande kod:
OBS!!! Du måste ändra användarnamn och lösenord i ALLA filerna, förutom forum.css. Leta efter "webben"

Kod: Markera allt

<html>
<head>
<title>Mitt forum</title>
<link rel="stylesheet" href="forum.css" type="text/css">
</head>
<body>
<a href="nytt.php">Skapa nytt inlägg</a><p>
<?
// ÄNDRA NEDAN SÅ DET PASSAR
$dbh=@mysql_connect("localhost","webben","webben")
  or die("Kunde inte ansluta till databasen!");
$query="SELECT * FROM forum WHERE forum.svID = 0 ORDER BY datum DESC";

mysql_select_db("dbforum", $dbh);
$resultat=mysql_query($query, $dbh);

echo '<table border="0" cellspacing="0" cellpadding="0">';
while ($rad=mysql_fetch_array($resultat)) {
    $textex = substr($rad["inlagg"],0,19)."...";    
?>
<tr>
<td bgcolor="#0000FF">
<a name="id_<?=$rad["inID"]?>"></a>
<font face="Verdana, Arial" color="#FFFFFF" size="2">
<b>Ämne: </b><a href="las.php?inID=<?=$rad["inID"]?>" class="forum_amne"><?=$rad["amne"]?></a>
</font>
</td>
<td bgcolor="#0000FF">&nbsp;</td>
<td bgcolor="#0000FF" align="right">
<font face="Verdana, Arial" color="#FFFFFF" size="2">
<b>Antal svar: </b><?=$rad["antal_sv"]?>
</font>
</td>
</tr>
<tr>
<td bgcolor="#AAAAAA" colspan="3">
<font face="Verdana, Arial" color="#FFFFFF" size="2">
<b><a href="mailto:<?=$rad["epost"]?>"><?=$rad["namn"]?></a></b>
</font>
</td>
</tr>
<tr>
<td bgcolor="#AAAAAA" colspan="3">
<font face="Verdana, Arial" color="#000000" size="2">
<a href="las.php?inID=<?=$rad["inID"]?>" class="forum_textex"><i><?=$textex?></i></a>
</font>
</td>
</tr>
<tr>
<td bgcolor="#0000FF">
<font face="Verdana, Arial" color="#FFFFFF" size="2">
Skapad: <?=$rad["datum"]?>
</font>
</td>
<td bgcolor="#0000FF" width="50">&nbsp;</td>
<td bgcolor="#0000FF">
<font face="Verdana, Arial" color="#FFFFFF" size="2">
Senaste inlägg:	<?=$rad["udatum"]?>
</font>
</td>
</tr>
<tr><td colspan="3">&nbsp;</td>
<?
}
?>
</table>
</body>
</html>


Denna kod är filen nytt.php:

Kod: Markera allt

<html>
<head><title>Nytt inlägg</title>
<script Language="JavaScript">
function Validera() {	
	amne = document.formen.amne.value;
	namn = document.formen.namn.value;
	epost = document.formen.epost.value;
	inlagg = document.formen.inlagg.value;
	if ((amne!="")&&(namn!="")&&(epost!="")&&(inlagg!="")) {
	  return true;
        } else {
	  alert("Du glömde nog att fylla i något av fälten\nÄmne, Namn, Epost eller Inlägg");
	  return false;
	}	
}	
</script>
</head>
<a href="start.php">Tillbaka till forumet</a>
<?
// ÄNDRA NEDAN!!!
if (isset($posta)) {
    $dbh=@mysql_connect("localhost","webben","webben")
      or die("Kunde inte ansluta till databasen");
    $datum=date("Y-m-d H:i:s");
    $query="INSERT INTO forum(amne,namn,epost,inlagg,datum) VALUES";
    $query.="('$amne','$namn','$epost','$inlagg','$datum')";
    
    mysql_select_db("dbforum", $dbh);
    mysql_query($query, $dbh);
    
    echo "Ditt inlägg är registrerat!";
} else {
?>
<form action="<?=$PHP_SELF?>" method="POST" name="formen" onSubmit="return Validera();">
Ämne:<br>
<input type="text" name="amne"><br>
Namn:<br>
<input type="text" name="namn"><br>
Epost:<br>
<input type="text" name="epost"><br>
Inlägg:<br>
<textarea name="inlagg" rows="5" cols="40"></textarea><br>
<input type="submit" value="Posta inlägg" name="posta">
<input type="reset" value="Återställ">
</form>
<?
}
?>
</body>
</html>
Skapa nu filen las.php:

Kod: Markera allt

<html>
<head>
<script Language="JavaScript">
function Validera() {	
	amne = document.formen.amne.value;
	namn = document.formen.namn.value;
	epost = document.formen.epost.value;
	inlagg = document.formen.inlagg.value;
	if ((amne!="")&&(namn!="")&&(epost!="")&&(inlagg!="")) {
	  return true;
        } else {
	  alert("Du glömde nog att fylla i något av fälten\nNamn, Epost eller Inlägg");
	  return false;
	}	
}	
</script>
<link rel="stylesheet" href="forum.css" type="text/css">
</head>
<body>
<a href="start.php#id_<?=$inID?>">Tillbaka till forumet</a><br>
<?
// ÄNDRA NEDAN!!!
$dbh=@mysql_connect("localhost","webben","webben")
  or die("Kunde inte ansluta till databasen!");
$query="SELECT * FROM forum where inID=$inID";

mysql_select_db("dbforum", $dbh);
$resultat=mysql_query($query, $dbh);

$rad=mysql_fetch_array($resultat);
echo "<title>Forum - Läser om: ".$rad["amne"]."</title>";
$orgamne=$rad["amne"];
if (empty($top))
  $top=$inID;
?>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td bgcolor="#0000FF">
<font face="Verdana, Arial" color="#FFFFFF" size="2">
<b>Ämne: </b><?=$rad["amne"]?>
</font>
</td>
<td bgcolor="#0000FF" colspan="2">&nbsp;</td>
</td>
</tr>
<tr>
<td bgcolor="#AAAAAA" colspan="3">
<font face="Verdana, Arial" color="#FFFFFF" size="2">
<b><a href="mailto:<?=$rad["epost"]?>"><?=$rad["namn"]?></a></b>
</font>
</td>
</tr>
<tr>
<td bgcolor="#AAAAAA" colspan="3">
<font face="Verdana, Arial" color="#000000" size="2">
<?=wordwrap($rad["inlagg"],60,"<br>",1)?>
</font>
</td>
</tr>
<tr>
<td bgcolor="#0000FF">
<font face="Verdana, Arial" color="#FFFFFF" size="2">
Skapad: <?=$rad["datum"]?>
</font>
</td>
<td bgcolor="#0000FF" width="50">&nbsp;</td>
<td bgcolor="#0000FF">
<font face="Verdana, Arial" color="#FFFFFF" size="2">
Senaste inlägg:	<?=$rad["udatum"]?>
</font>
</td>
</tr>
<tr><td colspan="3">&nbsp;</td>
</table>

<?
$query="SELECT * FROM forum WHERE svID=$inID ORDER BY datum DESC";

mysql_select_db("dbforum", $dbh);
$resultat=mysql_query($query, $dbh);

echo "<ul>";
while ($rad = mysql_fetch_array($resultat))
  Visa_Svar($rad["inID"], $rad["amne"], $rad["namn"], $rad["datum"]);
echo "</ul><hr>";
Visa_Form($orgamne);

function Visa_Svar($svarID, $svaramne, $svarnamn, $svardatum) {
    global $top;
?>
<li>
<a href="las.php?inID=<?=$svarID?>&top=<?=$top?>"><?=$svaramne?></a> skrivet av <?=$svarnamn?>, <?=$svardatum?>
</li>
<?	
// ÄNDRA NEDAN!!!
    $dbh=mysql_connect("localhost","webben","webben")
      or die("Kunde inte ansluta till databasen!");
    $query="SELECT * FROM forum WHERE svID=$svarID ORDER BY datum DESC";
    
    mysql_select_db("dbforum", $dbh);
    $resultat=mysql_query($query, $dbh);
    
    while ($rad=mysql_fetch_array($resultat)) {
	echo "<ul>";
	Visa_Svar($rad["inID"], $rad["amne"], $rad["namn"], $rad["datum"]);
	echo "</ul>";
    }
}

function Visa_Form($svamne) {
    global $inID, $top;
?>
Svara på inlägget:<br>
<form action="laggtill.php" name="formen" method="get" onSubmit="return Validera();">
Ämne:<br>
<input type="text" value="Svar: <?=$svamne?>" name="amne"><br>
Namn:<br>
<input type="text" name="namn"><br>
Epost:<br>
<input type="text" name="epost"><br>
Svar:<br>
<textarea name="inlagg" rows="5" cols="40"></textarea><br>
<input type="hidden" name="inID" value="<?=$inID?>">
<input type="hidden" name="top" value="<?=$top?>">
<input type="submit" value="Posta inlägg">
<input type="reset" value="Återställ">
</form>
<?
}
?>
</body>
</html>	
Näst sista filen, laggtill.php:

Kod: Markera allt

<html>
<head>
<title>Forum - Svarar på: <?=$amne?></title>
<link rel="stylesheet" href="forum.css" type="text/css">
</head>
<body>
<?
// ÄNDRA NEDAN!!
$dbh=@mysql_connect("localhost","webben","webben")
  or die("Kunde inte ansluta till databasen!");
$datum=date("Y-m-d H:i:s");
$query="INSERT INTO forum(svID,amne,namn,inlagg,datum) VALUES";
$query.="($inID,'$amne','$namn','$inlagg','$datum')";

mysql_select_db("dbforum", $dbh);
mysql_query($query, $dbh);

$query="UPDATE forum SET udatum='$datum', antal_sv = antal_sv+1 WHERE inID=$top";
mysql_query($query, $dbh);

mysql_close($dbh);

echo "Tack för ditt svar!";
?>
<p>
<a href="start.php#id_<?=$inID?>">Tillbaka till forumet</a>
</body>
</html>	


Och så till slut CSS-filen, som ska heta forum.css:

Kod: Markera allt

.forum_amne {color: RGB(255,255,255);
	     text-decoration: none;}
.forum_textex {color: RGB(255,255,0);
	       text-decoration: none;}	



Det var allt! Behöver du hjälp får du fråga :)
Jonathan Virtuality Gulbrandsen - phpBB Sverige Moderator & Översättare
Utvecklingsforum för den svenska översättningen av phpBB3
adde
Aktiv medlem
Aktiv medlem
Inlägg: 41
Blev medlem: 2003-06-25 10:18
Svar: 0
Kontakt:

Inlägg av adde »

Det skrev du längst upp i ditt inlägg.


virtuality skrev:Följ dessa instruktioner:

Skapa en MySQL databas i phpMYadmin eller motsvarade.
Döp den dbforum.

Kör sen följande kod på den sidan där du kan skriva in egna SQL-kommandon:

vart finns phpMYadmin mojset
Användarens profilbild
Kail
Administratör
Administratör
Inlägg: 2935
Blev medlem: 2003-06-03 13:53
Svar: 0
Ort: Linköping/Stockholm

Inlägg av Kail »

Installera phpBB.
Jakob Persson - Grundare av phpBB Sverige - IT-konsult - http://www.jakob-persson.com
The Complete phpBB Template Design Guide
adde
Aktiv medlem
Aktiv medlem
Inlägg: 41
Blev medlem: 2003-06-25 10:18
Svar: 0
Kontakt:

Inlägg av adde »

och hur gör jag det
Skriv svar

Vilka är online

Användare som besöker denna kategori: 1 och 0 gäst