Sziasztok! Egyik ismerősömnek készítettem egy
text mentéses üzenőfalat. Azért nem használtam MySQL-t, mert mindenképpen ragaszkodott hozzá, hogy ne SQL alapú legyen. Azóta nem alakítottam át, viszont arra gondoltam, hogy megosztom, mert mások számára is hasznos lehet.
Az oldal, ahová kilistázódnak az üzenetek (index.php)
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html>
<head>
<title>Üzenőfal</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />
<meta name=\"author\" content=\"ReSIk\" />
<meta name=\"copyright\" content=\"ReSIk\" />
<link rel=\"stylesheet\" href=\"style.css\" />
</head>
<body>
<center>
<h1>Üzenetküldés</h1>
<form method=\"post\" action=\"feldolgozo.php\">
Neved: <input type=\"text\" name=\"nev\" value=\"\" />
<br /><br />
Üzeneted: <textarea name=\"uzenet\"></textarea>
<br /><br />
<input type=\"submit\" value=\"Küldés\" />
<br /><br />
</form>
<h1>Eddigi üzenetek:</h1>
<div id=\"header\">
<hr />
<?php
$fajlnev = \"kiirasok.txt\";
$megnyitesolvas = fopen(\"$fajlnev\", \"r\");
$olvas = fread($megnyitesolvas, filesize($fajlnev));
if ( $olvas == null ) {
echo \"Nincsenek üzenetek!<br />\";
}
else {
echo $olvas;
}
?>
</div>
</body>
</html>
Az új üzenet hozzáadását feldolgozó script (feldolgozo.php)
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html>
<head>
<title>Üzenőfal</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />
<meta name=\"author\" content=\"ReSIk\" />
<meta name=\"copyright\" content=\"ReSIk\" />
<link rel=\"stylesheet\" href=\"style.css\" />
</head>
<body>
<?php
function feldolgozas()
{
$nev = $_POST[\"nev\"];
$uzenet = $_POST[\"uzenet\"];
if ( !isset ( $nev ) || !isset ( $uzenet ) ) {
echo \"
<script language=\'JavaScript\'>
alert(\'Minden űrlapot ki kell töltened!\');
location.href=\'index.php\';
</script>
\";
}
else {
if ( strlen ( $nev ) < 3 || strlen ( $nev ) > 20 ) {
echo \"
<script language=\'JavaScript\'>
alert(\'Nem lehet három karakternél rövidebb és húsz karakternél hosszabb neved!\');
location.href=\'index.php\';
</script>
\";
}
elseif ( strlen ( $uzenet ) < 10 || strlen ( $uzenet ) > 5000 ) {
echo \"
<script language=\'JavaScript\'>
alert(\'Az üzenetnek 10 karakternél nagyobbnak és 5000 karakternél kisebbnek kell lennie!\');
location.href=\'index.php\';
</script>
\";
}
else {
if ( $nev && $uzenet ) {
$megnyit = fopen(\"kiirasok.txt\", \"a\");
$beleir = fwrite($megnyit, \"Üzenetet írta: <b>$nev</b> ekkor: <b>\" . date(\"Y. \") . date(\"m. \") . date(\"d. | \") . date(\"H: \") . date(\"i: \") . date(\"s \\n\\n\") . \"</b><br />\" . \"Üzenet: <b>\'$uzenet\'\\n\\n</b><hr />\" );
fclose($megnyit);
echo \"<script language=\'JavaScript\'>
alert(\'Üzenetedet sikeresen kiírtuk!\');
location.href=\'index.php\';
</script>\";
}
else {
echo \"<script language=\'JavaScript\'>
alert(\'Üzeneted elküldése közben hiba lépett fel!\');
location.href=\'index.php\';
</script>\";
}
}
}
}
feldolgozas();
?>
</body>
</html>
A scripthez tartozó kezdetleges design (style.css)
body {
background-color: grey;
}
h1 {
color: white;
font-family: courier;
}
input {
border: 2px solid black;
}
textarea {
border: 2px solid black;
}
hr {
width: 800px;
}
div#header {
border: 2px solid black;
border-radius: 7px;
background-color: rgba(9,7,1,0.4);
}
b {
color: white;
}
A script működése: A főoldalon lévő űrlapba írhatod a neved és az üzented. Amennyiben nincs még létrehozva a mentéshez szükséges
kiirasok.txt, úgy nem kell manuálisan létrehozni, mert a script létrehozza magának! Ha hozzáadsz egy üzenetet, az mentődik a fájlba, és a főoldalon kilistázza a fájl tartalmát. A
kiirasok.txt fájlt abban a könyvtárban hozza létre, amiben az
index.php van!
A Live Demo eléréséhez
kattints ide! Ha ki szeretnétek próbálni, akkor nyugodtan.