Autor Zpráva
Aaadam
Profil
caute...
prave sa ucim PHP no a este mi to moc nejde :) ale aj tak... som sa snazil spravit jednoduchu anketu s dvoma moznostami ano a nie... ale nejak to nefunguje... takze sa nesmejte :D a poradte ako by som to mohol teda opravit.

tu je kod:

<style type="text/css">
body, html{ color:silver; background-color: black; font-size:15px; font-style:Arial;}
#spanyes { background-color:green; border: 1px solid Lime; height:15px}
#spanno ( background-color:maroon; border: 1px solid red; height:15px)
font { color:silver; font-size:15px; font-style:Arial; font-weight:bold;}
h1 { font-color:#BBDBFF; font-size:20px; font-style:Helvetica; text-decoration:none;}
</style>
<?php
if (!$_REQUEST["odoslane"]){
?>
<form action="anketa.php" method="post">
<p>Do you like my Web?</p>
<p><input type="radio" name="anketa" value="yes"CHECKED>Yes</p>
<p><input type="radio" name="anketa" value="no">No</p>
<p><input type="hidden" name="odoslane" value="1"></p>
<p><input type="submit" name="submit" value="Send" name="send"></p>
</form>
<?
}
else{
if( $_HTTP_POST_VARS["yes"]){
$i = 0;
$i = $i + 1;
$j = 3 + $i;
}
elseif ( $_HTTP_POST_VARS["no"]){
$k = 0;
$k = $k + 1;
$l =3 + $k;
}
?>
<table width=200 height=200 border=1 color=white style="border:1px solid white">
<tr width="200">
<td colspan=2 width="100%">
<h1>Anketa</h1>
</td>
</tr>
<tr width=200>
<td width=30><font>Yes:</font></td>
<td width=170><span id="spanyes" style=" width: <? $j; ?>;"></span></td>
</tr>
<tr width=200>
<td width=30><font>No:</font></td>
<td width=170><span id="spanno" style=" width: <? $l; ?>;"></span></td>
</tr>
</table>
<?
}
?>


Este by som potreboval nejak inak nastavit tie premenne $i a $k lebo takto sa to vzdy nastavi na o a potom sa pripocita... cize anketa nebude stupat... neda sa to nejak takto?
<script type="JavaScript">
<? $i ?> = document.getElementById(spanyes).style.width;
</script>
nonewood
Profil
no chtělo by to někam ukládat počet hlasů... takto by se zobrazilo pouze výsledek, po jednom, tvém hlasování.
- takže zapisuj si proměnné $i a $k někam do souboru

elseif ( $_HTTP_POST_VARS["no"]){
// načti ze souboru počet hlasů pro NE -> $k
++$k; //inkrementuješ proměnnou
$l = ...; //vypočítáš procenta viz dole
}


- namísto $i = $i + 1; používej ekvivalentní inkrementaci ++$i;
- bylo by dobré pro šířku spanu (grafu ankety) abys ji vypočítal ->
170px ... 100%
$j = $i / ($i + $k)
$sirka = 170*$j;
$j *= 100;
echo "<span id=\"spanno\" style=\" width: <? echo "$sirka"; ?>;\">$j %</span>";
Aaadam
Profil
najprv som si myslel ze by to bolo tak najlepsie (zapisovat $i a $k do suboru) ale este som sa tak daleko nedostal v prirucke :) tak to este nastudujem...
inac diky moc... dufam, ze potom to bude fungovat...

najprv som pouzil $i++; , presne ako v jave, lebo php sa mi dost podoba jave stylom zapisu: if, while, for, ; na konci riadku atd... ale $i++; nefungovalo tak som napisal $i = $i + 1; :D

cau
Aaadam
Profil
No, tak som urobil vsetko co som mal aby to bolo funkcne ale nejak to nefunguje Netusim co je zle, lebo aj percenta to pocita zle... Odkaz co to robi je na to http://welcomebyadam.we.funpic.de/nova/inquiry/inquiry.php
tu je novy zdrojak:

<style type="text/css">
body, html{ color:silver; background-color: black; font-size:15px; font-style:Arial;}
#divyes { background-color:green; border: 1px solid Lime; height:15px}
#divno ( background-color:maroon; border: 1px solid red; height:15px)
font { color:silver; font-size:15px; font-style:Arial; font-weight:bold;}
h1 { font-color:#BBDBFF; font-size:20px; font-style:Helvetica; text-decoration:none;}
</style>
<?php
if (!$_REQUEST["odoslane"]){
?>
<form action="inquiry.php" method="post">
<p>Do you like my Web?</p>
<p><input type="radio" name="anketa" value="yes"CHECKED>Yes</p>
<p><input type="radio" name="anketa" value="no">No</p>
<p><input type="hidden" name="odoslane" value="1"></p>
<p><input type="submit" name="submit" value="Send" name="send"></p>
</form>
<?
}
else{
//Tu sa to msui nacitavat zo suboru
define("YES", "yes.txt");
if(file_exists(YES)){
$fileYes = fopen(YES, "r+");
$i = fread($fileYes, 10);
}
else {
$fileYes=fopen(YES, "w");
$i=1;
}
define("NO", "no.txt");
if(file_exists(NO)){
$fileNo = fopen(NO, "r+");
$k = fread($fileNo, 10);
}
else {
$fileNo=fopen(NO, "w");
$k=1;
}

$j = $i / ($i + $k);
$l = $l / ($i + $k);

if( $_HTTP_POST_VARS["yes"]) {
++$i;
rewind($fileYes);
fwrite($fileYes, $i, 10);
fclose($fileYes);
fclose($fileNo);
$sirkaYes = 170 * $j;
$j *= 100;
$l *= 100;
}
elseif ( $_HTTP_POST_VARS["no"]) {
++$k;
rewind($fileNo);
fwrite($fileNo, $k, 10);
fclose($fileYes);
fclose($fileNo);
$sirkaNo = 170 * $l;
$l *= 100;
$j *= 100;
}
?>
<table width=200 height=200 border=1 color=white style="border:1px solid white">
<tr width="200">
<td colspan=2 width="100%">
<h1>Anketa</h1>
</td>
</tr>
<tr width=200>
<td width=30><font>Yes:</font></td>
<td width=170>
<span id="divyes" style=" width: <? $sirkaYes; ?>;">
<? echo $j; ?> %
</span>
</td>
</tr>
<tr width=200>
<td width=30><font>No:</font></td>
<td width=170>
<span id="divno" style=" width: <? $sirkaNo; ?>;">
<? echo $l; ?> %
</span>
</td>
</tr>
</table>
<?
}
?>
Toto téma je uzamčeno. Odpověď nelze zaslat.

0