Proste forum php/mysql
1.Utwórz tabele o nazwie "forum_pytanie" and "forum_odpowiedz" w bazie danych "firma".
Tabela forum_pytanie
CREATE TABLE `forum_pytanie` (
`id` int(4) NOT NULL auto_increment,
`temat` varchar(255) NOT NULL default '',
`opis` longtext NOT NULL,
`name` varchar(65) NOT NULL default '',
`email` varchar(65) NOT NULL default '',
`datetime` varchar(25) NOT NULL default '',
`wyswietlen` int(4) NOT NULL default '0',
`odpowiedzi` int(4) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
Table forum_odpowiedz
CREATE TABLE `forum_odpowiedz` (
`question_id` int(4) NOT NULL default '0',
`a_id` int(4) NOT NULL default '0',
`a_name` varchar(65) NOT NULL default '',
`a_email` varchar(65) NOT NULL default '',
`a_answer` longtext NOT NULL,
`a_datetime` varchar(25) NOT NULL default '',
KEY `a_id` (`a_id`)
) TYPE=MyISAM;
2. Utwórz plik utworz_temat.php
<?php
echo "<table>
<tr>
<form id='form1' name='form1' method='post' action='dodaj_temat.php'>
<td>
<table>
<tr>
<td colspan='3'><strong>Utwórz nowy temat</strong> </td>
</tr>
<tr>
<td><strong>Temat</strong></td>
<td>:</td>
<td><input name='temat' type='text' id='temat' size='50' /></td>
</tr>
<tr>
<td><strong>Opis</strong></td>
<td>:</td>
<td><textarea name='opis' cols='50' rows='3' id='opis'></textarea></td>
</tr>
<tr>
<td><strong>Login</strong></td>
<td>:</td>
<td><input name='name' type='text' id='name' size='50' /></td>
</tr>
<tr>
<td><strong>Email</strong></td>
<td>:</td>
<td><input name='email' type='text' id='email' size='50' /></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input type='submit' name='Submit' value='Wyślij' /> <input type='reset' name='Submit2' value='Reset' /></td>
</tr>
</table>
</td>
</form>
</tr>
</table>";
?>
3. Utwórz plik dodaj_temat.php
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="firma"; // Database name
$tbl_name="forum_pytanie"; // Table name
// Connect to server and select database.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$temat=$_POST['temat'];
$opis=$_POST['opis'];
$name=$_POST['name'];
$email=$_POST['email'];
$datetime=date("d/m/y h:i:s"); //utwórz datę i czas
$sql="INSERT INTO $tbl_name(temat, opis, name, email, datetime)VALUES('$temat', '$opis', '$name', '$email', '$datetime')";
$result=mysql_query($sql);
if($result){
echo "Successful<br>";
echo "<a href=main_forum.php>Zobacz temat</a>";
}
else {
echo "ERROR";
}
mysql_close();
?>
4: Utwórz plik main_forum.php
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="firma"; // Database name
$tbl_name="forum_pytanie"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$sql="SELECT * FROM $tbl_name ORDER BY id DESC";
// OREDER BY id DESC is order result by descending
$result=mysql_query($sql);
echo "<table>
<tr>
<td><strong>#</strong></td>
<td><strong>Temat</strong></td>
<td><strong>Wyswietleń</strong></td>
<td><strong>Odpowiedzi</strong></td>
<td><strong>Data/Czas</strong></td>
</tr>";
// Start looping table row
while($rows=mysql_fetch_array($result)){
echo "<tr>
<td>".$rows['id']."</td>
<td><a href='zobacz_temat.php?id=".$rows['id']."'>".$rows['temat']."</a><br></td>
<td>".$rows['wyswietlen']."</td>
<td>".$rows['odpowiedzi']."</td>
<td>".$rows['datetime']."</td>
</tr>";
// Exit looping and close connection
}
mysql_close();
echo "<tr>
<td colspan='5' ><a href='utworz_temat.php'><strong>Utworz Nowy Temat</strong> </a></td>
</tr>
</table>";
?>
5. Utwórz plik zobacz_temat.php
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="firma"; // Database name
$tbl_name="forum_pytanie"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// get value of id that sent from address bar
$id=$_GET['id'];
$sql="SELECT * FROM $tbl_name WHERE id='$id'";
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
echo "<table>
<tr>
<td><table>
<tr>
<td><strong>".$rows['temat']."</strong></td>
</tr>
<tr>
<td>".$rows['opis']. "</td>
</tr>
<tr>
<td><strong>Utworzony przez:</strong>".$rows['name']. "<strong>Email : </strong>".$rows['email']. "</td>
</tr>
<tr>
<td><strong>Data/czas : </strong>".$rows['datetime']. "</td>
</tr>
</table></td>
</tr>
</table>
<br>";
$tbl_name2="forum_odpowiedz"; // Switch to table "forum_odpowiedz"
$sql2="SELECT * FROM $tbl_name2 WHERE question_id='$id'";
$result2=mysql_query($sql2);
while($rows=mysql_fetch_array($result2)){
echo "<table>
<tr>
<td><table>
<tr>
<td><strong>ID</strong></td>
<td>:</td>
<td>".$rows['a_id']."</td>
</tr>
<tr>
<td><strong>Login</strong></td>
<td>:</td>
<td>".$rows['a_name']."</td>
</tr>
<tr>
<td><strong>Email</strong></td>
<td>:</td>
<td>".$rows['a_email']."</td>
</tr>
<tr>
<td><strong>Odpowiedź</strong></td>
<td>:</td>
<td>".$rows['a_answer']."</td>
</tr>
<tr>
<td><strong>Date/Time</strong></td>
<td>:</td>
<td>".$rows['a_datetime']."</td>
</tr>
</table></td>
</tr>
</table><br>";
}
$sql3="SELECT wyswietlen FROM $tbl_name WHERE id='$id'";
$result3=mysql_query($sql3);
$rows=mysql_fetch_array($result3);
$wyswietlen=$rows['wyswietlen'];
// if have no counter value set counter = 1
if(empty($wyswietlen)){
$wyswietlen=1;
$sql4="INSERT INTO $tbl_name(wyswietlen) VALUES('$wyswietlen') WHERE id='$id'";
$result4=mysql_query($sql4);
}
// count more value
$addwyswietlen=$wyswietlen+1;
$sql5="update $tbl_name set wyswietlen='$addview' WHERE id='$id'";
$result5=mysql_query($sql5);
mysql_close();
echo "<br>
<table>
<tr>
<form name='form1' method='post' action='dodaj_odpowiedz.php'>
<td>
<table>
<tr>
<td><strong>Login</strong></td>
<td>:</td>
<td><input name='a_name' type='text' id='a_name' size='45'></td>
</tr>
<tr>
<td><strong>Email</strong></td>
<td>:</td>
<td><input name='a_email' type='text' id='a_email' size='45'></td>
</tr>
<tr>
<td><strong>Odpowiedź</strong></td>
<td>:</td>
<td><textarea name='a_answer' cols='45' rows='3' id='a_answer'></textarea></td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</td>
</tr>
</table>";
?>
Utwórz plik dodaj_odpowiedz.php
<?php
$host="localhost"; // Host name
$username="root"; // Mysql username
$password=""; // Mysql password
$db_name="firma"; // Database name
$tbl_name="forum_odpowiedz"; // Table name
// Connect to server and select databse.
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// Get value of id that sent from hidden field
$id=$_POST['id'];
// Find highest answer number.
$sql="SELECT MAX(a_id) AS maxa_id FROM $tbl_name WHERE question_id='$id'";
$result=mysql_query($sql);
$rows=mysql_fetch_array($result);
// add + 1 to highest answer number and keep it in variable name "$max_id". if there no answer yet set it = 1
if ($rows) {
$max_id = $rows['maxa_id']+1;
}
else {
$max_id = 1;
}
// get values that sent from form
$a_name=$_POST['a_name'];
$a_email=$_POST['a_email'];
$a_answer=$_POST['a_answer'];
$datetime=date("d/m/y H:i:s"); // utwórz datę i czas
// Insert answer
$sql2="INSERT INTO $tbl_name(question_id, a_id, a_name, a_email, a_answer, a_datetime)VALUES('$id', '$Max_id', '$a_name', '$a_email', '$a_answer', '$datetime')";
$result2=mysql_query($sql2);
if($result2){
echo "Pomyślnie zapisano<br>";
echo "<a href='zobacz_temat.php?id=".$id."'>Zobacz odpowiedź</a>";
// If added new answer, add value +1 in odpowiedzi column
$tbl_name2="forum_pytanie";
$sql3="UPDATE $tbl_name2 SET odpowiedzi='$max_id' WHERE id='$id'";
$result3=mysql_query($sql3);
}
else {
echo "ERROR";
}
// Close connection
mysql_close();
?>
Wyszukiwarka
Podobne podstrony:
PHP Praktyczne wprowadzenie R 4 Wstęp do programowania Proste skrypty PHPJak cenzurować wypowiedzi i brzydkie słowa na forum, PHP SkryptyJak zainstalować popularne forum phpBB, PHP SkryptyPHP to Proste popatrykowe^thmystrefazero org forum viewtopic php f5njpomjPHP to ProsteMedycyna Paliatywna [forum] Organizacja i filozofia postÄtpowania w opiece paliatywnejnasze forum 1 2 [2005] hipoterapia i dogoterapiaPHP podst progr suplement wyklad grudzien 2011andmp proste zagadki dla dziecigotowanie jest proste03H Cykle prosteid 4727 Nieznany (2)Proste nauczanie id 402036 Nieznanycw phpnasze forum 3 4 [2003] Metoda Ruchu Rozwijającego Weroniki Sherbornezginanie prosteForum - Moduł 2, Semestr I, Teoretyczne podstawy wychowania, Moduł 2R 44, A T e o r i a S p r ę ż y s t o ś c i, T E M A T Y B L O K O W E, XIV Stateczność preta prowięcej podobnych podstron