Új hozzászólás Aktív témák

  • meone

    tag

    Sziasztok!

    Egy oldalra készítek egy egyszerű txt alapú üzenőfalat.
    Azért txt alapú mert nem kaptam Msql-es hozzáférést.

    Kereste kódot, hogy hogy kell készíteni, találtam is, de nem működik teljesen jól.
    Olyat szeretnék, hogy a smilye-kat is belerakja, de mikor rá kattintok, akkor nem rakja be. :(

    íme a kód:

    <?php
    ob_start();
    ?>

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
    <title>Vendégkönyv</title>
    <link href="style.css" type="text/css" rel="stylesheet" />
    <script language="JavaScript" type="text/javascript" >
    function sm01(text1) {
    text1.value += "[sm01]";
    }
    function sm02(text1) {
    text1.value += "[sm02]";
    }
    function sm03(text1) {
    text1.value += "[sm03]";
    }
    function sm04(text1) {
    text1.value += "[sm04]";
    }
    function sm05(text1) {
    text1.value += "[sm05]";
    }

    </script>
    </head>
    <body>
    <form name="beir" method="post" action="<? $_SERVER['PHP_SELF'] ?>">
    <table class="beir">
    <caption>Bejegyzés a vendégkönyvbe:</caption>
    <tr>
    <td><label for="nev">Név:</label></td>
    <td><input type="text" name="nev" id="nev" /></td>
    </tr>
    <tr>
    <td><label for="email">E-mail cím:</label></td>
    <td><input type="text" name="email" id="email" /></td>
    </tr>
    <tr>
    <td><label for="uzenet">Üzenet:</label></td>
    <td><textarea rows="5" cols="30" name="uzenet" id="uzenet"></textarea></td>
    </tr>
    <tr class="smiley">
    <td colspan="2">
    <a href="#" onclick="sm01();return false"><img src="sm01.gif" alt="sm01" border="0"/>
    <a href="#" onclick="sm02();return false"><img src="sm02.gif" alt="sm02" border="0"/>
    <a href="#" onclick="sm03();return false"><img src="sm03.gif" alt="sm03" border="0"/>
    <a href="#" onclick="sm04();return false"><img src="sm04.gif" alt="sm04" border="0"/>
    <a href="#" onclick="sm05();return false"><img src="sm05.gif" alt="sm05" border="0"/>
    </td>
    </tr>
    <tr>
    <td colspan="2" class="submit"><input type="submit" name="mehet" value="Küldés" /></td>
    </tr>

    </table>
    </form>

    <?php

    if (isset($_GET['error']))
    {
    print "Hiba: Minden mező kitöltése kötelező!<br />";
    }

    //egy oldalon ennyi üzenet
    $egyoldalon = "10";

    //a tároló fájl neve
    $f = "tarol.txt";


    $handle = fopen($f,"r");

    if ($tomb = @fread($handle,filesize($f)))
    {
    $uzenetek = explode ("\n",$tomb);
    $uzenetek = array_reverse($uzenetek);
    $uzenetszam = (count($uzenetek)-1);

    if (!isset($_GET['lap']))
    {
    $_GET['lap'] = 1;
    }

    $lapszam = intval(($uzenetszam+($egyoldalon-1))/$egyoldalon);

    if ($lapszam!=1)
    {
    print "<div id=\"sorszam\">Oldalak: ";

    for($i=1;$i<=$lapszam;$i++)
    {

    if ($i!=$_GET['lap'])
    {
    echo '<a href="'.$PHP_SELF.'?lap='.$i.'">['.$i.']</a>';
    }//if
    else
    {
    echo $i;
    }//else
    }//for

    print "<br />Összes üzenet:$uzenetszam</div>";
    }//if

    if ($_GET['lap'] !== 1)
    {
    $i = ($_GET['lap']-1)*$egyoldalon;
    }

    if ($_GET['lap'] == 1){
    $i = 1;
    }

    while($uzenetek[$i] == true)
    {

    if ($egyoldalon > 0)
    {
    $resz = explode("|",$uzenetek[$i]);
    ?>
    <table class="uzenet" cellspacing="0">
    <tr class="header">
    <td class="id">#<?=$resz[4];?></td>
    <td class="nick"><a href="mailto:<?=$resz[1];?>"><?=$resz[0];?></a></td>
    <td class="datum"><?=$resz[3];?></td>
    </tr>
    <tr class="body">
    <td colspan="3"><?=$resz[2]?></td>
    </tr>
    </table>
    <?php
    $i++;
    $egyoldalon--;
    }//if
    else
    {
    break;
    }
    }//while
    }//if fread

    else
    {
    print ("Hiba: Nem tudom megnyitni a fájlt ,Vagy nincs még bejegyzés");
    }
    ?>
    </body>
    </html>


    <?php
    if (isset($_POST['mehet']))
    {

    if ($_POST['uzenet'] !== "" && $_POST['nev']!== "" && $_POST['email'] !== "")
    {
    $fajl = "tarol.txt";
    $handle = fopen($f,"a+");
    $tomb = fread($handle,filesize($f));
    $uzenetek = explode ("\n",$tomb);
    $aktualis = count($uzenetek);
    $uzenet = $_POST['uzenet'];
    $uzenet = htmlspecialchars($uzenet);
    $uzenet = str_replace("[sm01]","<img src='sm01.gif' alt='sm01' />",$uzenet);
    $uzenet = str_replace("[sm02]","<img src='sm02.gif' alt='sm02' />",$uzenet);
    $uzenet = str_replace("[sm03]","<img src='sm03.gif' alt='sm03' />",$uzenet);
    $uzenet = str_replace("[sm04]","<img src='sm04.gif' alt='sm04' />",$uzenet);
    $uzenet = str_replace("[sm05]","<img src='sm05.gif' alt='sm05' />",$uzenet);
    $uzenet = str_replace("\n","<br />",$uzenet);
    $row = $_POST['nev']."|";
    $row .= $_POST['email']."|";
    $row .= $uzenet."|";
    $row .= date("Y-m-d H:m:s")."|";
    $row .= $aktualis."\n";
    fwrite($handle,$row);
    header ("location: index.php");
    }

    else
    {
    header ("location: index.php?error=1");
    }
    }

    ?>
    <?php
    ob_end_flush();
    ?>

    Ahogy így nézem, valami aprócska dolog lehet a gond, de nem tudok rá jönni, hogy mi.

    A segítséget előre is köszönöm.

Új hozzászólás Aktív témák