Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите разобраться с опросом, без базы данных 
:(
    Опции темы
SS77
Дата 12.9.2006, 04:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 12.9.2006

Репутация: нет
Всего: нет



Недавно начал изучать PHP, вот первые вопросы появились...
Нашел статью про создание своей системы опроса для сайта, но не могу понять как работаю некоторые элементы, да и вообще чет он у меня не заработал... Судя по всему знаний не хватает  smile 
Вот форма опроса:
Код

<html>
<head>
<title>Untitled</title>
</head>
<body>
<form action="/vote.php" method="get" target="_blank">
<input type="Hidden" name=id value=1>
<b>Стоять-бояца! Сколько лет? Почему не в армии?</b><p>
<input type="Radio" name=vote value=1 checked>Пацаны! Наших бьют!<br>
<input type="Radio" name=vote value=2>А с какой целью интересуетесь?<br>
<input type="Radio" name=vote value=3>Дык я... это...<p>
<input type="Submit" value="Сказать"><p>
<a href="/vote.php?id=1" target="_blank">Кто про что?</a>
</form>
</body>
</html>


А вот скрипт:

Код

<?
   
    $data = File("$id.dat"); // Что за строка? Что она делает?
    
    if ($vote) echo "<b><font color=red>
    Спасибо за Ваше мнение!
    </font></b><p>";
 
    echo "<b>$data[0]</b><p>";
 
    for ($i=1;$i<count($data);$i++) {
        $votes = split("~", $data[$i]);    //Тоже мало понятно...
        echo "$votes[1]: <b>$votes[0]</b><br>";
    }
// И этот кусок объясните плиз...
    if ($vote) {
        $f = fopen("$id.dat","w");
        fputs($f, "$data[0]");
        for ($i=1;$i<count($data);$i++) {
            $votes = split("~", $data[$i]);
            if ($i==$vote) $votes[0]++;
            fputs($f,"$votes[0]~$votes[1]");
        }
        fclose($f);
    }
?>


Если можно, объяснте как это все работает и можно ли использовать только один фаил как базу?

PM MAIL ICQ   Вверх
Kastor
Дата 12.9.2006, 07:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 10.12.2005

Репутация: нет
Всего: нет



Нешта в ентом духе, звиняй коль непонятно
Код


<?    
    
    $data = file("$id.dat"); // считываем содержимое файла в массив, где каждый элемент строка из файла    
     
    if ($vote) echo "<b><font color=red>    
    Спасибо за Ваше мнение!    
    </font></b><p>";    
    
    echo "<b>$data[0]</b><p>";    
    
    for ($i=1;$i<count($data);$i++) {    
        $votes = split("~", $data[$i]);    // Строки из файла имеют вид зн.1~зн.2 При помощи split делим их по "~" и получаем массив вида $votes = array("зн.1","зн.2");    
        echo "$votes[1]: <b>$votes[0]</b><br>";    
    }    
     
    if ($vote) {    
        $f = fopen("$id.dat","w");
        fputs($f, "$data[0]");    // записываем первую строчку
        for ($i=1;$i<count($data);$i++) {    
            $votes = split("~", $data[$i]);    // ... $votes = array("зн.1","зн.2");
            if ($i==$vote) $votes[0]++;        // Если номер вашего ответа $vote соотвецтвует номеру ответа из файла с номером строки $i увеличиваем значение голосов на 1 - $votes[0]++;
            fputs($f,"$votes[0]~$votes[1]"); // Записываем строку    
        }    
        fclose($f);    
    }    
?>



PM MAIL   Вверх
SS77
Дата 12.9.2006, 07:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 12.9.2006

Репутация: нет
Всего: нет



Спасибо!  smile 
PM MAIL ICQ   Вверх
BuShaRt
Дата 12.9.2006, 08:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: 4
Всего: 6



SS77
 smile Лучше с таким кодом разбираться самому... И задавать конретные вопросы...

Цитата

Если можно, объяснте как это все работает и можно ли использовать только один фаил как базу?


Конечно можно, но не всегда то что можно стоит делать -) Самодельные текстовые БД не лучший вариант, лучше уж DBM. 
PM MAIL   Вверх
ZorGG
Дата 26.3.2010, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 38
Регистрация: 24.3.2010
Где: Мир сей.

Репутация: нет
Всего: нет



SS77, Можете скинуть ссылку откуда качали данный скрипт? Пожалуйста.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0760 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.