Autor | Zpráva | ||
---|---|---|---|
achyles Profil * |
#1 · Zasláno: 14. 3. 2010, 00:33:19
Zdravím.
Vytvořil jsem jednoduchou anketu, vše fungovalo do doby než jsem zadal podmínku jednoho hlasování z 1 IP. Anketa se sice zobrazí, ale neodešle data do DB. SQL CREATE TABLE anketa ( ano INT NOT NULL DEFAULT '0', mozna INT NOT NULL DEFAULT '0', ne INT NOT NULL DEFAULT '0' ) CREATE TABLE anketa_ip ( ip VARCHAR(32) ) Kód: <?php $dbhost = '127.0.0.1'; $dbuser = 'root'; $dbpass = '******'; $dbname = 'zkouska'; $ip = $_SERVER['REMOTE_ADDR']; mysql_connect ($dbhost, $dbuser, $dbpass) or ($error = 1); if ($error == '1') {echo 'Nelze se připojit k MySQL';} else { mysql_select_db ($dbname) or ($errordb = 1); } if ($errordb == '1') {echo 'Nelze se připojit k DB';} else { $vysledek = mysql_query("select * from anketa"); $zaznam=MySQL_Fetch_Array($vysledek); } $ano1 = $zaznam['ano'] + 1; $mozna1 = $zaznam['mozna'] + 1; $ne1 = $zaznam['ne'] + 1; $ipvdb = mysql_query("select * from anketa_ip"); $zaznamip = MySQL_Fetch_Array($ipvdb); if ($zaznamip['ip'] == $ip) {$povoleni = 0;} else {$povoleni = 1;} if (empty ($_POST['send'])) {} elseif ($povoleni == '1') { if ($_POST['hlas'] == 'ano') { mysql_query("update `anketa` set ano = $ano1");} else {} if ($_POST['hlas'] == 'mozna') { mysql_query("update `anketa` set mozna = $mozna1");} else {} if ($_POST['hlas'] == 'ne') { mysql_query("update `anketa` set ne = $ne1");} else {} } if ($povoleni == '1') {mysql_query("insert into `anketa_ip` VALUES ('$ip')");} else {} ?> <html> <head> <title>anketa</title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250"> </head> <body> <table> <form method="post" action="index.php"> <tr><td><input type="radio" name="hlas" value="ano"></td><td>Ano</td> <td><?php echo '(<b>'; echo $zaznam['ano']; echo '</b>)';?></td></tr> <tr><td><input type="radio" name="hlas" value="mozna"></td><td>Možná</td> <td><?php echo '(<b>'; echo $zaznam['mozna']; echo '</b>)';?></td></tr> <tr><td><input type="radio" name="hlas" value="ne"></td><td>Ne</td> <td><?php echo '(<b>'; echo $zaznam['ne']; echo '</b>)';?></td></tr> <tr><td align="middle" colspan=3><input type="submit" value="Hlasovat" name="send" onclick="<?php if ($povoleni == ('0')) { echo ' alert('Hlasovat lze pouze 1-krát!')';} else {} ?>"></td></tr> </form> </table> </body> </html> Předem děkuji. |
||
slim12 Profil |
#2 · Zasláno: 14. 3. 2010, 00:41:54
a vypise nejakou chybu
|
||
achyles Profil * |
#3 · Zasláno: 14. 3. 2010, 00:54:40
slim12:
Právě že nic. |
||
Alphard Profil |
#4 · Zasláno: 14. 3. 2010, 01:01:48
Kde se to zastaví? Jakou hodnotu dostane $povoleni?
|
||
achyles Profil * |
#5 · Zasláno: 14. 3. 2010, 01:35:24
Alphard:
Ono se zdá, že je vše v pořádku $povoleni má hodnotu 1, ale když dám odeslat prostě to nenaláduje data do DB. |
||
achyles Profil * |
#6 · Zasláno: 14. 3. 2010, 09:03:31
Vyřešeno.
if (empty ($_POST['send'])) {} else { if ($povoleni == '1' and $_POST['hlas'] == 'ano') { mysql_query("update `anketa` set ano = $ano1"); $povoleni = 2;} else {} if ($povoleni == '1' and $_POST['hlas'] == 'mozna') { mysql_query("update `anketa` set mozna = $mozna1"); $povoleni = 2;} else {} if ($povoleni == '1' and $_POST['hlas'] == 'ne') { mysql_query("update `anketa` set ne = $ne1"); $povoleni = 2;} else {} } if ($povoleni == '2') {mysql_query("insert into `anketa_ip` VALUES ('$ip')");} else {} |
||
Časová prodleva: 14 let
|
0