Zadejte hledaný výraz...

Anketa v PHP bez Mysql

Ales Ulrych
verified
rating uzivatele
3. 5. 2011 05:52:02
Ahoj všichni,
moc prosím o radu. Ze stránek http://jary.borec.cz/prog/polls.php jsem si
stáhnul jednoduchou anketu. Když soubor rozbalím a nahraji pro pokus na web, tak
funguje s jedním zásadním problémem. Nefunguje ošetření proti více hlasům pomocí
cookie. http://fbclomnice.cz/anketa/anketa.php.
Ale na jeho příkladu http://jary.borec.cz/prog/ankety/anketa.php to funguje.
Nic jsem na kódu neměnil, jen jsem ho na stránky fbclomnice nahrál. Můžete mi
prosím říct, co je špatně?
Hledal jsem kontakt na autora webu, bohužel bez úspěchu.
Díky moc.
Aleš
3. 5. 2011 05:52:02
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633339
Petr
verified
rating uzivatele
(9 hodnocení)
3. 5. 2011 08:34:52
ja bych se vyprd na cookies a nekam si ukladej IP adresy hlasujicich.. a pokud z jedne IP hlasoval uz, tak ma smulu (dokud tu IP nesmazes) .. ale tyhle veci resit pres soubory je prasarna...
3. 5. 2011 08:34:52
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633338
Ales Ulrych
verified
rating uzivatele
3. 5. 2011 08:42:40
Jo, kdybych to uměl, tak bych to tak udělal. Já jen potřebuju naverbovat do stránek anketu a hledám nějakou, která by mi fungovala. V PHP se bohužel nevyznám, tak se snažím použít už hotové řešení. A toto mi funguje, teda kromě té nepříjemné věci. Ale protože to na stránkách autora funguje, hledám, kde může být chybka.
3. 5. 2011 08:42:40
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633337
Fautzi
verified
rating uzivatele
(1 hodnocení)
3. 5. 2011 09:01:11
Ja mam dotaz opravdu to potrebujes bez mysql?
3. 5. 2011 09:01:11
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633336
Ales Ulrych
verified
rating uzivatele
3. 5. 2011 09:03:44
Napsal Fautzi;652313
Ja mam dotaz opravdu to potrebujes bez mysql?
Bohužel na webu, kde má být použitá MYSQL neběží. Což jsou stránky fbclomnice.cz
Ale pokud víš o nějakém, který mysql používá a dá se stáhnout a bez větších úprav zprovoznit, pošli mi prosím
odkaz. Tu bych využil na firemním webu vlajky.cz, kde už mysql je.
Dík moc.
3. 5. 2011 09:03:44
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633335
Petr
verified
rating uzivatele
(9 hodnocení)
3. 5. 2011 09:14:59
Napsal Aleš Ulrych;652314
Bohužel na webu, kde má být použitá MYSQL neběží. Což jsou stránky fbclomnice.cz
Ale pokud víš o nějakém, který mysql používá a dá se stáhnout a bez větších úprav zprovoznit, pošli mi prosím
odkaz. Tu bych využil na firemním webu vlajky.cz, kde už mysql je.
Dík moc.
http://www.google.cz/search?q=php+poll+mysql&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:cs:official&client=firefox-a
---------- Příspěvek doplněn 03.05.2011 v 09:15 ----------
Napsal Aleš Ulrych;652308
Jo, kdybych to uměl, tak bych to tak udělal. Já jen potřebuju naverbovat do stránek anketu a hledám nějakou, která by mi fungovala. V PHP se bohužel nevyznám, tak se snažím použít už hotové řešení. A toto mi funguje, teda kromě té nepříjemné věci. Ale protože to na stránkách autora funguje, hledám, kde může být chybka.
tak pouzij echo debbuger a vypisuj si veskere promenne (cookies) abys zjistil kde se Ti co nepropisuje ;-) ... tim zjistis kde je chybka (treba nemas ani povolene cookies na serveru, kdyz nemas ani mysql)
3. 5. 2011 09:14:59
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633334
Ales Ulrych
verified
rating uzivatele
3. 5. 2011 11:39:09
Napsal NSBM;652318
http://www.google.cz/search?q=php+poll+mysql&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:cs:official&client=firefox-a
---------- Příspěvek doplněn 03.05.2011 v 09:15 ----------
tak pouzij echo debbuger a vypisuj si veskere promenne (cookies) abys zjistil kde se Ti co nepropisuje ;-) ... tim zjistis kde je chybka (treba nemas ani povolene cookies na serveru, kdyz nemas ani mysql)
Jo, kdybych věděl, o čem mluvíš. :(
Nemůže někdo z vás si ten kód stáhnout a mrknout na něj, zda je v pořádku? Třeba chybu zjistíte hned na první pohled. :)
3. 5. 2011 11:39:09
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633333
nline
verified
rating uzivatele
(1 hodnocení)
3. 5. 2011 11:43:34
Nemůže být jen problém v tom, že nemáš v prohlížeči cookies povoleny :)?
3. 5. 2011 11:43:34
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633332
Ales Ulrych
verified
rating uzivatele
3. 5. 2011 11:51:17
Napsal nline;652383
Nemůže být jen problém v tom, že nemáš v prohlížeči cookies povoleny :)?
ne protože, když si spustím jeho ukázkovou anketu, tak to funguje. A zkoušel jsem to na různých pc i různých prohlížečích. Jeho kód nahraný na mých stránkách je uveden hned v prvním příspěvku. Ten je opravdu pouze stáhnut a rozbalen na ftp prostor webu.
3. 5. 2011 11:51:17
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633331
Petr
verified
rating uzivatele
(9 hodnocení)
3. 5. 2011 13:27:03
Napsal Aleš Ulrych;652388
ne protože, když si spustím jeho ukázkovou anketu, tak to funguje. A zkoušel jsem to na různých pc i různých prohlížečích. Jeho kód nahraný na mých stránkách je uveden hned v prvním příspěvku. Ten je opravdu pouze stáhnut a rozbalen na ftp prostor webu.
a mas na webserveru povolene COOKIEs ??? :-)
echo debbuger -> http://thinkvitamin.com/code/how-to-debug-in-php/
3. 5. 2011 13:27:03
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633330
nline
verified
rating uzivatele
(1 hodnocení)
3. 5. 2011 13:38:50
Já si ten script stáhnul a je pravdou, že na locale s nim mám stejnej problém jako ty. Nicméně při letmym pohledu do scriptu hlasuj.php nikde nevidim kontrolu, zda je cookies uložena.
3. 5. 2011 13:38:50
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633329
Ales Ulrych
verified
rating uzivatele
3. 5. 2011 13:46:30
Napsal NSBM;652415
a mas na webserveru povolene COOKIEs ??? :-)
echo debbuger -> http://thinkvitamin.com/code/how-to-debug-in-php/
Webhosting máme u Czechie http://www.czechia.com/ a právě jsem volal na infolinku a tam mi řekli že COOKIEs je záležitost prohlížeče, že se na serverech snad ani zakázat nedá.
---------- Post added 3.5.2011 at 22:07 ----------
Napsal Aleš Ulrych;652427
Webhosting máme u Czechie http://www.czechia.com/ a právě jsem volal na infolinku a tam mi řekli že COOKIEs je záležitost prohlížeče, že se na serverech snad ani zakázat nedá.
Ahoj, tak jsem zapnul zobrazení chyb a píše mi to toto: Notice: Undefined variable: ankety in /www/sites/5/site24105/public_html/anketa/hlasuj.php on line 15
Warning: Cannot modify header information - headers already sent by (output started at /www/sites/5/site24105/public_html/anketa/hlasuj.php:15) in /www/sites/5/site24105/public_html/anketa/hlasuj.php on line 19
Warning: Cannot modify header information - headers already sent by (output started at /www/sites/5/site24105/public_html/anketa/hlasuj.php:15) in /www/sites/5/site24105/public_html/anketa/hlasuj.php on line 38
kód hlasuj.php vypadá takto:
ini_set('display_errors', 'On');
error_reporting(E_ALL);
//Získá z URL adresy
$id=$_GET;
//Nìkdo se pokouší hacknout skript a provést nepøípustnou volbu
if ($id>3){
header("Location: anketa.php");
exit();
}
$susenka = "ankety";
$neprijmouthlas = 60*60*24*7; // 1 týden nehlasovat = nastaví platnost cookie
if (($$susenka) <> 1) //pokud nehlasoval, tak
{
//Pošli cookie
setcookie($susenka,1,Time()+$neprijmouthlas);
//Naètení dat
$soubor=fopen("anketa.txt", "r"); //otevøe soubor pro ètení
$data=fread($soubor, filesize("anketa.txt")); //naète obsah celého souboru do promìnné data
fclose($soubor); //uzavøe soubor
$hlasy = explode("|",$data);
//Navýší hlasy
$hlasy=$hlasy+1;
$data=$hlasy."|".$hlasy."|".$hlasy."|".$hlasy;
//Otevøe soubor v režimu zápis (parametr "w")
$soubor=fopen("anketa.txt", "w");
//Zapíše nová data do souboru
fwrite($soubor,$data);
//Zavøe soubor
fclose($soubor);
}
//Pošle hlavièku pro pøesmìrování na pùvodní stránku s anketou
header("Location: anketa.php");
?>
a anketa.php takto:
ini_set('display_errors', 'On');
error_reporting(E_ALL);
/*
Jednoducha PHP anketa
Vladimir Jary
http://jary.borec.cz/
*/
//Globalni promenne:
$title = "Ankety";
$question = "Jste ¹»astní?";
$choice0 = "Jasnì";
$choice1 = "Ale jo";
$choice2 = "Ani nevím";
$choice3 = "Ne";
function hlavicka($titulek){
echo "
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">n";
echo "nn";
echo "".$titulek."n";//Titulek stránky
echo "n"; //Kódování èe¹tiny
echo ""; //zaká¾e indexování stránek, které by zkreslovalo anketu
echo "n";
echo "n";
echo "

".$titulek."

n";
}
function paticka(){
echo "

(l) copyleft by Vladimir Jary

n";
echo "n";
}
function precti_soubor($adresa){
$soubor=fopen($adresa, "r"); //otevøe soubor pro ètení
$data=fread($soubor, filesize($adresa)); //naète obsah celého souboru do promìnné data
fclose($soubor); //uzavøe data
return($data); //vratí naètená data
}
function anketa(){
global $question;
global $choice1;
global $choice2;
global $choice3;
global $choice4;
$obsah_souboru = precti_soubor('anketa.txt');
$hlasy = explode("|",$obsah_souboru);
$celkem = $hlasy+$hlasy+$hlasy+$hlasy;
echo "";
echo "";
//Cviceni - nahradte nasledujici usek for cyklem
//Volba 1
//Výpoèet ¹íøky sloupeèku, pozor na dìlení nulou
if($celkem!=0)
$sirka=round((100*$hlasy)/$celkem);
else
$sirka=0;
//Tisk odkazu
echo "";
//Tisk sloupeèku
echo "";
//Volba 2
if($celkem!=0)
$sirka=round((100*$hlasy)/$celkem);
else
$sirka=0;
//Tisk odkazu
echo "";
//Tisk sloupeèku
echo "";
//Volba 3
if($celkem!=0)
$sirka=round((100*$hlasy)/$celkem);
else
$sirka=0;
//Tisk odkazu
echo "";
//Tisk sloupeèku
echo "";
if($celkem!=0)
$sirka=round((100*$hlasy)/$celkem);
else
$sirka=0;
//Tisk odkazu
echo "";
//Tisk sloupeèku
echo "";
echo "";
echo "
".$question."
".$choice1."-(".$hlasy.")";
echo "
".$choice2."-(".$hlasy.")";
echo "
".$choice2."-(".$hlasy.")";
echo "
".$choice3."-(".$hlasy.")";
echo "
Celkem hlasovalo: ".$celkem."
";
}
hlavicka($title);
anketa();
paticka();
?>
Najdete mi někdo chybu?
3. 5. 2011 13:46:30
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633328
Martin Janeček
verified
rating uzivatele
14. 5. 2011 23:54:30
prosím, vysvětlíte mi někdo, co znamená kontrola proměnné v proměnné pomocí znaků <>?
Jaký smysl má ověřování $ankety, proč autor nepoužil rovnou $ankety a takhle tam cpe proměnnou? a proč místo této nesmyslnosti nepoužít pole?
A co vlastně znamená <>?
Teď si opravdu připadám jako PHP nováček...
14. 5. 2011 23:54:30
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633327
hm
verified
rating uzivatele
(20 hodnocení)
15. 5. 2011 00:16:11
<> je prakticky stejne jako != (nektere jazyky vcetne php tento zapis umoznuji)
zbytek nema cenu resit, psal to patlal, takze pokud te napadaji lepsi reseni cehokoliv, je to proste jen proto ze se to lepe vyresit da...
15. 5. 2011 00:16:11
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633326
Jan Matoušek
verified
rating uzivatele
(12 hodnocení)
15. 5. 2011 12:18:16
No myslím si, že než se snažit nahrávat hroznou anketu, tak mnohem lehčí by bylo využít služby: http://blueboard.cz/sluzby-anketa
Myslím si, že pro tvoje účely je to nejlepší volba, můžeš si nastavit barvy, font, a nevím co vše a nepotřebuješ žádnou znalost php.
15. 5. 2011 12:18:16
https://webtrh.cz/diskuse/anketa-v-php-bez-mysql/#reply633325
Pro odpověď se přihlašte.
Přihlásit