v1.0 | |
Témák átlátható kilistázása | Lehetséges |
Téma létrehozás | Lehetséges |
Hozzászólás témákhoz | Lehetséges |
Témák adminisztrálása | Nem lehetséges |
->Törlése | Nem lehetséges |
->Szerkesztése | Nem lehetséges |
->Kiemelése | Nem lehetséges |
Beléptetõrendszer | Nincs |
Biztonság | Gyenge * |
Készítõ: | Én |
Verzió: | v1.0 |
Készítési idõ: | Nem számoltam, egy nap alatt meg volt a v1 |
<style>
body { background: #fea; text-align:center; }
table {border:1px solid black; width:800px}
td#comment {border:1px solid black;}
*{
margin:0;
padding:0;
}
div#page{
width:800px;
margin:0 auto;
text-align:left;
}
</style>
<div id=\"page\">
<?php
session_start();
mysql_connect(\"localhost\",\"root\",\"\") or die(\"Nem tudtam csatlakozni az adatbázishoz!\");
mysql_select_db(\"blackdog\") or die(\"Nem tudtam kiválasztani az adatbázist!\");
if(!isset($_GET[\"option\"])) header(\"Location: ?option=main\");
switch($_GET[\"option\"]) {
case \"main\":
print(\"<button onclick=\'window.location.href=\\\"?option=createtopic\\\"\'>Új téma</button>\");
print(\"<table>\");
print(\"<tr><td style=\'width:400px\'><b>Cím</b></td><td><b>Indította</b></td><td><b>Válaszok</b></td></tr>\");
$query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 1\");
while($row = mysql_fetch_array($query)) {
$res = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 0 AND TOPICID = $row[iD]\");
$valaszok = mysql_num_rows($res);
print(\"<tr><td><a href=\'?option=show&id=$row[iD]\'>$row[TITLE]</a></td><td><i>$row[AUTHOR]</i></td><td>$valaszok válasz</td></tr>\");
}
print(\"</table>\");
break;
case \"show\":
if(!isset($_GET[\"id\"])) header(\"Location: ?option=main\");
$query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 1 AND ID = \".$_GET[\"id\"]);
$row = mysql_fetch_array($query);
if(!is_array($row)) die(\"Nem létezik ilyen téma!\");
print(\"<button onclick=\'window.location.href=\\\"?option=show\\\"\'>Vissza</button>\");
print(\"<button onclick=\'window.location.href=\\\"?option=comment&topicid=$_GET[id]\\\"\'>Új hozzászólás</button>\");
$query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 0 AND TOPICID = $_GET[id]\");
$valaszok = mysql_num_rows($query);
print(\"<table><tr><td id=\'comment\'>$row[AUTHOR]</td><td id=\'comment\'><b>$row[TITLE]</b> ($valaszok válasz)<br>Hozzáadva: \".date(\"Y.m.d H:i:s\",$row[\"ADDED\"]).\" $row[AUTHOR] által<hr><hr>$row[CONTENT]</td></tr>\");
while($row = mysql_fetch_array($query)) {
print(\"<tr><td id=\'comment\'>$row[AUTHOR]</td><td id=\'comment\'>Hozzáadva: \".date(\"Y.m.d H:i:s\",$row[\"ADDED\"]).\" $row[AUTHOR]<hr><hr>$row[CONTENT]</td></tr>\");
}
print(\"</table>\");
break;
case \"comment\":
if(!isset($_GET[\"topicid\"])) header(\"Location: ?option=main\");
if(isset($_POST[\"redirect\"])) {
print(\"<button onclick=\'window.location.href=\\\"?option=createtopic\\\"\'>Vissza</button><br>\");
if(empty($_POST[\"content\"])) die(\"Üres tartalom\");
if(empty($_POST[\"name\"])) die(\"Üres név\");
$content = $_POST[\"content\"];
$nev = $_POST[\"name\"];
$time = time();
mysql_query(\"INSERT INTO `messages` (`ISTOPIC`,`AUTHOR`,`TITLE`,`CONTENT`,`ADDED`,`TOPICID`) VALUES (0,\'$nev\',\'\',\'$content\',\'$time\',\'$_GET[topicid]\');\") or die(mysql_error());
header(\"Location: ?option=main\");
} else {
print(\"<button onclick=\'window.location.href=\\\"?option=show\\\"\'>Vissza</button>\");
print(\"<form method=\'POST\'><input type=\'text\' name=\'name\' placeholder=\'Név\'/><br><textarea style=\'resize:vertical;\' cols=\'100\' rows=\'20\' name=\'content\' placeholder=\'Tartalom\'></textarea><br><input type=\'submit\' name=\'redirect\'/></form>\");
}
break;
case \"delete\":
if(!isset($_GET[\"msgid\"])) header(\"Location: ?option=main\");
$query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 1 AND ID = \".$_GET[\"id\"]);
$row = mysql_fetch_array($query);
if(!is_array($row)) die(\"Nem létezik ilyen téma!\");
if(!isset($_GET[\"sure\"])) die(\"Biztos vagy benne? <button onclick=\'window.location.href= \\\"?option=delete&sure\\\"\'>Törlés</button> | <button>Vissza</button>\");
else mysql_query(\"DELETE FROM `messages` WHERE `topicid` = \".$_GET[\"msgid\"]) or die(mysql_error());
break;
/*
SQL: messages
ID - ISTOPIC - AUTHOR - TITLE - CONTENT - ADDED - TOPICID
*/
case \"createtopic\":
if(isset($_POST[\"redirect\"])) {
print(\"<button onclick=\'window.location.href=\\\"?option=createtopic\\\"\'>Vissza</button><br>\");
if(empty($_POST[\"name\"])) die(\"Üres név\");
if(empty($_POST[\"title\"])) die(\"Üres cím\");
if(empty($_POST[\"content\"])) die(\"Üres tartalom\");
$title = $_POST[\"title\"];
$content = $_POST[\"content\"];
$nev = $_POST[\"name\"];
$time = time();
$topicid = mysql_fetch_array(mysql_query(\"SELECT max( TOPICID ) FROM `messages`\"));
$topicid = $topicid[\"0\"]+1;
mysql_query(\"INSERT INTO `messages` (`ISTOPIC`,`AUTHOR`,`TITLE`,`CONTENT`,`ADDED`,`TOPICID`) VALUES (1,\'$nev\',\'$title\',\'$content\',\'$time\',\'$topicid\');\") or die(mysql_error());
header(\"Location: ?option=main\");
} else {
print(\"<button onclick=\'window.location.href=\\\"?option=show\\\"\'>Vissza</button>\");
print(\"<form method=\'POST\'><input type=\'text\' name=\'name\' placeholder=\'Név\'/><br><input type=\'text\' name=\'title\' placeholder=\'Cím\'/><br><textarea style=\'resize:vertical;\' cols=\'100\' rows=\'20\' name=\'content\' placeholder=\'Tartalom\'></textarea><br><input type=\'submit\' name=\'redirect\'/></form>\");
}
break;
default: header(\"Location: ?option=main\");
}
?>
</div>
$query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 1\");
while($row = mysql_fetch_array($query)) {
$res = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 0 AND TOPICID = $row[iD]\");
$valaszok = mysql_num_rows($res);
print(\"<tr><td><a href=\'?option=show&id=$row[iD]\'>$row[TITLE]</a></td><td><i>$row[AUTHOR]</i></td><td>$valaszok válasz</td></tr>\");
}
print(\"</table>\");
$query = mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 1\");
while($row = mysql_fetch_array($query)) {
echo \'<tr><td><a href=\"?option=show&id=\'.$row[\"ID\"].\'\">\'.htmlspecialchars($row[\"TITLE\"].\'</a></td><td><i>\'.htmlspecialchars($row[\"AUTHOR\"]).\'</i></td><td>\'.mysql_num_rows(mysql_query(\"SELECT * FROM messages WHERE ISTOPIC = 0 AND TOPICID = \".$row[\'ID\'])).\' válasz</td></tr>\';
}
echo \"</table>\";
Komolyra fordítva a szót, néhány komolyabb hiba /van más is, de most nincs kedvem az összeset felsorolni/:
/* Ok. */
- az általad használt mysql függvények elavultak, javasolt a mysqli, vagy PDO használata
/* Újraírom majd az egészet :) */
- minden egy fájlban van /átláthatatlan, stb./
/* Majd a következõ verzióban */
- teljes mértékben statikus, a dinamikusság jeleit még csak nem is mutatja
/* Írtam, hogy ez még nagyon alap, de már mûködik legalább. */
- nincs semmiféle autentikáció
/* Szerintem az elsõ átláthatóbb, de legyen így. */
- $row[iD] -> $row[\'ID\']
/* Ok. */
- print helyett inkább echo
/* Majd teszek bele, kifelejtettem. */
- htmlspecialchars
/* Majd teszek bele, kifelejtettem. */
- injection ellen mysql_real_escape_string(), ami szintén elavult
/* Jogos. Szintén még csak nagyon alap verzió, tesztelgetésre volt. */
- én nem írnám ki a mysql errort csak úgy bárkinek
/* Miért? Mit használnál helyettük? */
- én nem használnék ilyen buttonokat
/* Javítom. */
- feleslegesen csinálsz egy sor helyett öt sort
/* Szerintem az elsõ átláthatóbb, de legyen így. */
- echo \"asd = $valami\" => echo \'asd = \'.$valami;
mégrosszabb fórumot[/quote]
Köszi a bíztatást.
a világ egyik legrosszabb webprogramozási nyelvén
[/quote]
Szerintem PHP nélkül nehezebb lenne mindezt megcsinálni
Gratulálok, sikeresen írtál a világ egyik legrosszabb webprogramozási nyelvén egy mégrosszabb fórumot.Valahol mindig el kell kezdeni.. ez rossz lett, és? A következõ verzió jobb lesz! :D Nem vagyok profi PHP -ból.. de legalább szántál rá idõt és nekiültél megcsinálni ennyit. ;) Gratulációm.
Valahol mindig el kell kezdeni.. ez rossz lett, és? A következõ verzió jobb lesz! :D Nem vagyok profi PHP -ból.. de legalább szántál rá idõt és nekiültél megcsinálni ennyit. ;) Gratulációm.
Gratulálok, sikeresen írtál a világ egyik legrosszabb webprogramozási nyelvén egy mégrosszabb fórumot.
[/quote]
Köszi
írtál egy mégrosszabb fórumot. Ha már muszáj használnod a PHP-t..vagy de, de Szilard00 hozzászólása például teljesen építõ jellegû kritika.
de valahol el kell kezdeni, gyakorlásnak nem rossz :) [...] de ha szánsz rá elég idõt és energiát ennél sokkal jobbat fogsz majd alkotni :) további sok sikert :) és ne felejtsd el honnan indultál :)
[/quote]
Valahol mindig el kell kezdeni.. ez rossz lett, és? A következõ verzió jobb lesz! :D Nem vagyok profi PHP -ból.. de legalább szántál rá idõt és nekiültél megcsinálni ennyit. ;) Gratulációm.
[/quote]
Szép munka! Sok sikert :)
[/quote]
Csak így tovább, sok sikert, szép munka.
[/quote]
Sziasztok.Az SMF-et nem egy ember készíti hanem egy komplett csapat, éppen ezért nem lehet összehasonlítani Nukerdog fórumát és az SMF-et.
Nem tudom miért fikázzátok, legalább próbálkozik, és nem elvenni kéne a kedvét, hanem biztatni, hogy folytassa.
Kezdésnek jó, majd idõvel kiforrja magát ez a fórum is, az smf rendszere se úgy kezdte amilyen most ;)
Gratulálok, sikeresen írtál a világ egyik legrosszabb webprogramozási nyelvén egy mégrosszabb fórumot.Miért a \"a világ egyik legrosszabb programozási nyelve\"? Nem is értelek... Mindennek az alap köve a PHP, de ha jobban átgondolom, akkor a HTML.