За последние 24 часа нас посетили 19468 программистов и 1610 роботов. Сейчас ищут 817 программистов ...

Как сделать admin базы messages.txt

Тема в разделе "PHP для новичков", создана пользователем slavkoz, 21 июн 2008.

  1. slavkoz

    slavkoz Активный пользователь

    С нами с:
    21 июн 2008
    Сообщения:
    2
    Симпатии:
    0
    Как можно сделать, чтобы через форму удаляти данные построчно из messages.txt?

    *index.php*
    <form name="form1" method="post" action="gbook_add.php">
    <table width="320" border="0" class="index2">
    <tr>
    <td>Прізвище:</td>
    <td><input name="prz" type="text" size="20" maxlength="20"></td>
    </tr>
    <tr>
    <td>Ім’я:</td>
    <td><input name="username" type="text" size="20" maxlength="20"></td>
    </tr>
    <tr>
    <td>По батькові: </td>
    <td><input name="bat" type="text" size="20" maxlength="20"></td>
    </tr>
    <tr>
    <td>Контактний телефон:</td>
    <td><input name="tel" type="text" size="20" maxlength="20"></td>
    </tr>
    <tr>
    <td colspan="2" align="center">
    <input type="submit" name="Submit" value="Замовити">
    <input type="reset" name="Submit2" value="Відмінити"></td>
    </tr>
    </table>
    </form>

    *gbook_add.php*
    <?php
    $filename = "messages.txt";
    $delitmer = "_";
    $prz_limit = 20;
    $username_limit = 20;
    $bat_limit = 20;
    $tel_limit = 20;
    $come = ";" ;
    $nam = "nomer" ;
    if (isset($_POST))
    {
    if (isset($_POST['prz']) & isset($_POST['username']) & isset($_POST['bat']) & isset($_POST['tel']))
    {
    if (((strlen($_POST['prz'])>0) & (strlen($_POST['prz'])<=$prz_limit)) &
    ((strlen($_POST['username'])>0) & (strlen($_POST['username'])<=$username_limit)) &
    ((strlen($_POST['bat'])>0) & (strlen($_POST['bat'])<=$bat_limit)) &
    ((strlen($_POST['tel'])>0) & (strlen($_POST['tel'])<=$tel_limit)))
    {
    $prz = str_replace("\r\n", "<br>", htmlspecialchars($_POST['prz']));
    $username = str_replace("\r\n", "<br>", htmlspecialchars($_POST['username']));
    $bat = str_replace("\r\n", "<br>", htmlspecialchars($_POST['bat']));
    $tel = str_replace("\r\n", "<br>", htmlspecialchars($_POST['tel']));
    $arr = array($nam, $data=date("d.m.y"), $prz, $username, $bat, $tel, $come);
    $new_message = implode($delitmer, $arr) . "\r\n";
    $messages_arr = @file($filename);
    $messages_str = $new_message;
    $messages_str .= trim(implode("", $messages_arr));

    $fp = fopen($filename, "w+");
    fwrite($fp, $messages_str);
    fclose($fp);
    echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"2; URL=index.php\">";
    echo "<h3>Ваш заказ принято. Менеджер Вам передзвонить</h3>";
    }
    else
    {
    echo "<h3>Помилка!!!<br>Не всі дані ведені<br><a href='/robota/index.php'>Заказати</a></h3>";
    }
    }
    }
    ?>
     
  2. Hight

    Hight Старожил
    Команда форума Модератор

    С нами с:
    5 мар 2006
    Сообщения:
    7.153
    Симпатии:
    0
    Адрес:
    из злой параллельной вселенной
    Чтобы удаляти данные построчно надо покурить ман по функции file()

    А, чтобы соблюдать правила нашего форума, надо их сначала прочитать:
    http://www.php.ru/forum/viewtopic.php?t=2804