Autor | Zpráva | ||
---|---|---|---|
Werewolf Profil |
#1 · Zasláno: 29. 3. 2009, 20:15:29
Ahoj, dělám výpis anket podle $_GET['id].
Mám definované proměnné, pod nimi definovanou funkci, abych nemusel kopírovat kód nebo to cyklit, ale ta funkcemi háže undefined variable (nedefinovaná proměnná). Nechápu. Definoval jsem ji. Kód: anketa.php <?php mysql_pconnect("localhost", "*****", "******"); mysql_select_db("default"); mysql_query("SET NAMES utf8;"); $seet = "tryanks_ank"; $id = @$_GET['id']; $name = @$_GET['name']; $note = @$_GET['note']; $select = @$_GET['select']; $ank = mysql_query("SELECT * FROM ".$seet." WHERE id = '".$id."'"); $row = mysql_fetch_array($ank); $votes = $row['ans1c'] + $row['ans2c'] + $row['ans3c'] + $row['ans4c'] + $row['ans5c'] + $row['ans6c'] + $row['ans7c'] + $row['ans8c'] + $row['ans9c'] + $row['ans10c']; $pr = $votes / 100; $perc = Array( 1 => $row['ans1c'] / $pr, 2 => $row['ans2c'] / $pr, 3 => $row['ans3c'] / $pr, 4 => $row['ans4c'] / $pr, 5 => $row['ans5c'] / $pr, 6 => $row['ans6c'] / $pr, 7 => $row['ans7c'] / $pr, 8 => $row['ans8c'] / $pr, 9 => $row['ans9c'] / $pr, 10 => $row['ans10c'] / $pr ); function option_row($_id, $v) { $return = ' <tr> <td> <table border="1" cellpadding="5"> <tr> <td><a href="?id='.$_id.'vote='.$v.'">'.$row['ans'.$v].'</a></td> <td class="votes">'.$row['ans'.$v.'c']; if($row['ans'.$v.'c'] == 1) { $return .= 'hlas'; } elseif($row['ans'.$v.'c'] >= 2 && $row['ans'.$v.'c'] <= 4) { $return .= 'hlasy'; } elseif($row['ans'.$v.'c'] >= 5) { $return .= 'hlasů'; } $return .= ' </td> </tr> <tr> <td class="perc"><div style="width: '.ceil($perc[$v]).'%; background-color: orange; border: 1px solid black; height: 15px"> <td>'.$perc[$v].'%</td> </tr> </table> </td> </tr> '; return $return; } ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <meta http-equiv="Content-Style-Type" content="text/css" /> <title> Zobrazuji anketu s id <?php echo($id); ?> | zvolil jste <?php if($name != 1) { echo("ne"); } ?>zobrazovat jméno ankety | zvolil jste <?php if($note != 1) { echo("ne"); } ?>zobrazovat poznámku autora | <?php if(@$_COOKIE['anks_id'.$id] == 1) { echo("hlasoval jste, zvolil jste \"".$row['ans1']."\" (1. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 2) { echo("hlasoval jste, zvolil jste \"".$row['ans2']."\" (2. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 3) { echo("hlasoval jste, zvolil jste \"".$row['ans3']."\" (3. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 4) { echo("hlasoval jste, zvolil jste \"".$row['ans4']."\" (4. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 5) { echo("hlasoval jste, zvolil jste \"".$row['ans5']."\" (5. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 6) { echo("hlasoval jste, zvolil jste \"".$row['ans6']."\" (6. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 7) { echo("hlasoval jste, zvolil jste \"".$row['ans7']."\" (7. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 8) { echo("hlasoval jste, zvolil jste \"".$row['ans8']."\" (8. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 9) { echo("hlasoval jste, zvolil jste \"".$row['ans9']."\" (9. možnost)"); } elseif(@$_COOKIE['anks_id'.$id] == 10) { echo("hlasoval jste, zvolil jste \"".$row['ans10']."\" (10. možnost)"); } else { echo("neshlasoval jste"); } ?></title> <style> BODY TABLE TR TD TABLE {width: 100%; height: 100%;} TD.perc {width: 150px;} TD.votes {text-align: right;} A, A:link, A:visited, A:active, A:hover {font-family: Arial; font-color: black;} </style> </head> <body> <?php if($select != 1) { ?> <table style="border: 3px double blue; padding: 3px; width: 200px" border="1" cellpadding="5"> <?php if($name == 1) { ?> <tr> <td title="Název ankety"><?php echo($row['name']); ?></td> </tr> <?php } ?> <tr> <td title="Otázka"><?php echo($row['que']); ?></td> </tr> <?php if(!empty($row['ans1'])) { option_row($id, 1); } ?> <?php if(!empty($row['ans2'])) { option_row($id, 2); } ?> <?php if(!empty($row['ans3'])) { option_row($id, 3); } ?> <?php if(!empty($row['ans4'])) { option_row($id, 4); } ?> <?php if(!empty($row['ans5'])) { option_row($id, 5); } ?> <?php if(!empty($row['ans6'])) { option_row($id, 6); } ?> <?php if(!empty($row['ans7'])) { option_row($id, 7); } ?> <?php if(!empty($row['ans8'])) { option_row($id, 8); } ?> <?php if(!empty($row['ans9'])) { option_row($id, 9); } ?> <?php if(!empty($row['ans10'])) { option_row($id, 10); } ?> <?php } ?> </table> </body> </html> Desetkrát (protože je deset odpovědí) mi to háže chyby na řádcích 27, 28, 30, 31, 32, 38 a 39. Vůbec si s tím nevím rady. Mohl by někdo poradit? Díky |
||
Alphard Profil |
#2 · Zasláno: 29. 3. 2009, 20:23:06
přečtěte si něco o globálních proměnných
|
||
Werewolf Profil |
#3 · Zasláno: 29. 3. 2009, 20:54:45
Alphard
Děkuji Vám, Alpharde, už jsem to pochopil a odstranil chyby. |
||
Časová prodleva: 15 let
|
0