Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: PHP скрипт для голосования
 
 автор: Smith in a coat   (03.05.2008 в 15:59)   письмо автору
 
 

Я в пхп пока мало шарю. На учёбе задали задание: написать скрипт голосования. Форма такая: Вопрос, три варианта ответов. Ниже график (ну типа картинок). Когда человек проголосовал, то график соответствующего варианта ответа растёт. Как это сделать? Уже 2 дня не могу раздуплиться.
Голосование, когда надо не график, а просто цифры я разобрался, а вот с этими графиками чёт никак.

   
 
 автор: Atheist   (03.05.2008 в 16:00)   письмо автору
 
   для: Smith in a coat   (03.05.2008 в 15:59)
 

Пример кода, которым пытаешься график построить, в студию

   
 
 автор: Smith in a coat   (03.05.2008 в 16:06)   письмо автору
12.2 Кб
 
   для: Atheist   (03.05.2008 в 16:00)
 

Да вот в том-то и дело, что хз как тот график строить.
Надо, чтоб было просто три полоски. Типа диаграмма, что-ли..

Вот всё, до чего я додумался:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<?
//print_r($_POST);
$vote='vote.txt';
$mass=file($vote);
echo "<pre>";
print_r($mass);
echo "</pre>";
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Untitled Document</title>
</head>
<body>
Нравится?
<form name="form1" method="post" action="">
<p>
<label>
<input name="vote" type="radio" value="0" checked>
да</label>
<br>
<label>
<input name="vote" type="radio" value="1">
нет</label>
<br>
<label>
<input type="radio" name="vote" value="2">
не знаю</label>
</p>
<p><br>
<label>
<input type="submit" name="Submit" value="Голосовать">
</label>
</p>
</form>
<table width="300" border="1">
<tr>
<td width="100" align="center" valign="bottom"><img src="" width="32" height="32" alt="" style="background-color: #00CC66"></td>
<td width="100" align="center" valign="bottom"><img src="" width="32" height="32" alt="" style="background-color: #00CC66"></td>
<td width="78" align="center" valign="bottom"><img src="" width="32" height="32" alt="" style="background-color: #00CC66"></td>
</tr>
<tr>
<td align="center">да</td>
<td align="center">нет</td>
<td align="center">не знаю </td>
</tr>
</table>
<p>&nbsp;</p>
</body>
</html>

Вот на картинке там те зелёные квадратики должны расти, когда выбираешь вариант

   
 
 автор: elenaki   (03.05.2008 в 16:14)   письмо автору
 
   для: Atheist   (03.05.2008 в 16:00)
 

если есть цифры, то можно нарисовать несколько столбиков, высота (или длина) которых будет пропорциональна этим цифрам.


допустим, есть 5 переменных - это результаты по пяти вариантам, тогда график строится так:
<
table cellpadding=0 cellspacing=5 border=0 align="center" class="sm_text" >
<tr>
    <td align="center"><?=$ena?><br><?=round($ena_percent)?>%</td>
    <td align="center"><?=$xi?><br><?=round($xi_percent)?>%</td>
    <td align="center"><?=$duo?><br><?=round($duo_percent)?>%</td>
    <td align="center"><?=$under?><br><?=round($under_percent)?>%</td>
    <td align="center"><?=$over?><br><?=round($over_percent)?>%</td>
</tr>
<tr>
  <td valign="bottom" align="center" height="200"><img src="images/poll.gif" width="10" height="<?=round($ena_percent*200/100)?>"></td>
  <td valign="bottom" align="center"><img src="images/poll.gif" width="10" height="<?=round($xi_percent*200/100)?>"></td>
  <td valign="bottom" align="center"><img src="images/poll.gif" width="10" height="<?=round($duo_percent*200/100)?>"></td>
  <td valign="bottom" align="center"><img src="images/poll.gif" width="10" height="<?=round($under_percent*200/100)?>"></td>
  <td valign="bottom" align="center"><img src="images/poll.gif" width="10" height="<?=round($over_percent*200/100)?>"></td>
</tr><tr>
    <td align="center" class="red_text"><b>1</b></td>
    <td align="center" class="red_text"><b>X</b></td>
    <td align="center" class="red_text"><b>2</b></td>
    <td align="center" class="red_text"><b>U</b></td>
    <td align="center" class="red_text"><b>O</b></td>
</tr><tr>
    <td colspan="5">&#211;&#253;&#237;&#239;&#235;&#239;: <b><?=$all_votes?></b></td>
</tr>
</table>


где poll.gif - это картинка, залитая цветом шириной 10px и высотой - в зависимости от результата, который в виде процентного соотношения вычисляется от высоты таблицы, тут 200px.

   
 
 автор: Smith in a coat   (03.05.2008 в 16:20)   письмо автору
 
   для: elenaki   (03.05.2008 в 16:14)
 

Всё, смысл понял. Щас буду пробовать.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования