Anketa // chyba

Programovacie jazyky, rady, poradňa...
Fata! ChaoS
Star
Star
Používateľov profilový obrázok
Príspevky: 650
Registrovaný: 12 apr 2006, 20:23
Bydlisko: Tvrdošovce
Kontaktovať používateľa:

Anketa // chyba

Príspevok od používateľa Fata! ChaoS »

Takže som napísal nasledovnú anketu:

Anketa.php

Kód: Vybrať všetko

<form action="a_odpoved.php" method="post">
<center><font face="Arial CE, Arial" size="5">
Bude dobrá takáto anketa?<br>
A: Nie <br>
B: Ano <br>
C: Možno <br>
<input type="text" name="pismeno" size="5" style="background-color: white; border: 1px solid #e0e8ec;color: #7D7D7D"><br>
<br>
<br>
<input type="submit" value="Potvrď svoju odpoveď!">
</font></center>
</form>
a_odpoved.php

Kód: Vybrať všetko

<?
$Aid=1;
$nick=$userdata['username'];
echo $nick;
echo $pismeno;
switch ($pismeno) {
case "A":
    echo "Bohužial ste odpovedali nesprávne, správna odpoveď bola B:...text...";
    break;
case "B":
    echo "Gratulujem Vaša odpoveď bola správna, dostali ste sa do súťaže o PA acc!";
    break;
case "C":
    echo "Bohužial ste odpovedali nesprávne, správna odpoveď bola B:...text...";
    break;
default:
    echo "Zadali ste nepoužiteľný znak. Prosím zadajte jedno z veľkých písmen A, B, C!";
}
if ($pismeno=="B"){
  $sql="INSERT INTO Anketa (nick,anketa,spravnost) VALUES ('$nick',$Aid,'ano')";
   mysql_query($sql);
}elseif($pismeno=="A" || $pismeno=="C"){
	$sql="INSERT INTO Anketa (nick,anketa,spravnost) VALUES ('$nick',$Aid,'nie')";
   mysql_query($sql);
}

?>
Nuž a v premennej $pismeno, nieje žiadná hodnota, ale ve´d mala by byť, lebo v anketa.php sa zapíše nejaké písmeno a to sa prepošle a keďže meno toho formuláro bolo pismeno tak by PHP malo samo spravit takú premenú s hodnotou, ktorú som zadal, nieje tak? Čo mám natom zle?
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

zrejme máš vypnuté register_globals. Všade kde máš $pismeno daj $_POST['pismeno']
KaktusBR
Medium Expert
Medium Expert
Príspevky: 103
Registrovaný: 13 dec 2007, 17:13
Bydlisko: IOM
Kontaktovať používateľa:

Príspevok od používateľa KaktusBR »

skus napisat v subore pre odpoved <?php mas tam len <?

ked som to skusil tak islo len vyhadzovalo nejake chyby koli tomu ze chces vypisat nick ale ho vo formulary nezadavat. ale asi je to len cast skriptu tak by to malo byt v poho
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

KaktusBR: nevidím dôvod prečo by malo písať chybu, ak tak iba notice (upozornenie). Na väčšine serveroch je to vypnuté, a ak nie tak stačí dať zavináč pred premennú. Problém bol určite v tých globálnych ako som písal.
KaktusBR
Medium Expert
Medium Expert
Príspevky: 103
Registrovaný: 13 dec 2007, 17:13
Bydlisko: IOM
Kontaktovať používateľa:

Príspevok od používateľa KaktusBR »

hej mas asi pravdu. mozno mam nieco nastavene co on nema

vypise mi toto:

Kód: Vybrať všetko

Notice: Undefined variable: userdata in C:\Program Files\EasyPHP 2.0b1\www\e\a_odpoved.php on line 14
CBohužial ste odpovedali nesprávne, správna odpoveď bola B:...text...
Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) in C:\Program Files\EasyPHP 2.0b1\www\e\a_odpoved.php on line 35

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in C:\Program Files\EasyPHP 2.0b1\www\e\a_odpoved.php on line 35
Fata! ChaoS
Star
Star
Používateľov profilový obrázok
Príspevky: 650
Registrovaný: 12 apr 2006, 20:23
Bydlisko: Tvrdošovce
Kontaktovať používateľa:

Príspevok od používateľa Fata! ChaoS »

Hej audiotrack mi dobre poradil tak mi to už ide, len som nechcel spamovať tak som mu len pridal karmu.

KaktusBR, ale zato dík za snahu :wink:
Napísať odpoveď