| 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: 16 let
|
|||
0