Помогите написать скрипт

Тема в разделе "PHP", создана пользователем Izrael, 22 июл 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Izrael

    Izrael

    Регистр.:
    12 фев 2008
    Сообщения:
    452
    Симпатии:
    57
    Ребята кто понимает хорошо php для вас это сильно не затруднит... помогите написать скрипт..
    1.Нужно создать форму туда человек вводит имя.
    2.Когда ввел имя ему дается индивидуальная ссылка (храниться 1-2 дня).
    3. Потом если ввести эту ссылку в браузер то загрузиться окно... Допустим Привет Вася(Вася это имя которое он ввел)
     
  2. finerit

    finerit Писатель

    Регистр.:
    19 июл 2009
    Сообщения:
    9
    Симпатии:
    0
    Думаю скрипт за вас писать никто не будет, а принципы расскажу

    1. Делается html-форма с методом POST. В ней текстовые поля и кнопка submit
    2. В файл или базу вы записываете к примеру порядковый номер и соответстие ему имени к примеру 001 - Вася, 002 - Петя
    3. При открытии ссылки вида example.com/?id=001 вы ищите в файле/базе элемент с номером $_GET['id'] == '001', забираете оттуда соотвествующее имя и выводите его
     
  3. Izrael

    Izrael

    Регистр.:
    12 фев 2008
    Сообщения:
    452
    Симпатии:
    57
    а как сделать чтоб через сутки чистилось допустим для Васи?
     
  4. JSilver

    JSilver Постоялец

    Регистр.:
    18 апр 2006
    Сообщения:
    106
    Симпатии:
    48
    Точнее:
    2. 001|Вася|200907222326
    | - это разделитель, с помощью которго режим строку на части (см. функцию explode)
    последнее число - это дата+время в формате ГГГГММДДЧЧмм, либо можешь использовать число в линуксовом формате времени, но будет не так наглядно.
    Ну и соответственно при записи нового пользователя и/или при проверке существующего сделать проверку на просроченные даты и их удлять.
     
  5. kozax89

    kozax89 Постоялец

    Регистр.:
    12 июл 2009
    Сообщения:
    135
    Симпатии:
    4
    Ну легче через базу mySQL,в ней 2 поля - id, name. Поле id делаешь auto-increment - теперь оно будет автоматом рости с каждой записью.

    1. Так как сказал finerit страничка с формой (1 поле ввода и 1 кнопка)с методом пост (апример setname.php). Переменную id эта страничка отсылает на обработчик (тоесть страницу которая запишет это в базу к примеру progres.php)

    <?
    if (isset($_POST['name'])) {$name = $_POST['name'];}
    if (isset ($subscemail) && ($subscpasswd));}


    $result = mysql_query("INSERT INTO название_дб (name) VALUES ('$name')");

    if ($result == 'true') {echo "<p>Добавление проведено успешно!</p>";}
    else {echo "<p>Не удалось добавить имя!</p>";}
    }
    else
    {
    echo "<p>Вы не ввели имя - невозможно продолжить операцию!</p>";
    }
    ?>

    2. Страничка например names.php - в ней php скрипт который выбирает из бд поле name, в зависимости от переменной id получиной через ссылку.

    <?
    $names = mysql_query("SELECT names FROM название_дб WHERE id='$id'");
    $namesrow = mysql_fetch_array($names);
    $selectname = $namesrow['name'];
    ?>


    3. И так - если в бд у нас 3 записи-
    id-1 name-Вася
    id-2 name-Петя
    id-3 name-Лол
    то в случаи если линк ...names.php?id=1 Страница нам покажет Вася, а если ...names.php?id=3 то - Лол.

    <?
    echo ("Выбранное имя: ".$selectname."!");
    ?>


    Думаю этих "скриптов" тебе хватит, остальное сам сделаешь :Р
    Ну а насчет времени - самому интересно узнать.
     
  6. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    такую задачу проще решать на файлах...

    вводит имя, генерируется ссылка, записывается в файл...

    при заходе, считываем файл и время его создания/изменения, если прошли сутки, чистим все...если нет, то пропускаем пользователя.

    если уж ОЧЕНЬ приспичит (что маловероятно), написать мелкий авторемувер старых файлов, дело 1 минуты.
     
  7. PapaJoe

    PapaJoe

    Регистр.:
    4 авг 2008
    Сообщения:
    620
    Симпатии:
    312
    блин, может проще сессии прикрутить с куками?
     
  8. baddan

    baddan

    Регистр.:
    14 мар 2008
    Сообщения:
    355
    Симпатии:
    42
    1. форму и сам нарисуеш

    2. В файл или базу вы записываете к примеру порядковый номер и соответстие ему имени к примеру 001 - Вася, 002 - Петя

    PHP:
    $kol=count(file('name.txt'));
    $ima=$_POST['name'];

    $f1=fopen("name.txt","a+");
    fputs($f1,"$kol\t$ima\n");
    fclose($f1);

    3. При открытии ссылки вида example.com/?id=001
    PHP:
    $id=$_GET['id'];

    $name=file('name.txt');
    foreach(
    $name as $n1){
     list(
    $nom,$ima)=explode("\t",trim($n1));
     if(
    $nom==$id){
      echo 
    "$ima\n"; break;
     }
    }

    Ну вот соедениш 2 куска и будет тебе счастье
     
Статус темы:
Закрыта.