PDA

Visualizza versione completa : phpPolls


quipo.it
27-04-2001, 17.23.41
Ho provato a installare PhpPolls (http://www.phpwizard.net/phpPolls), ma se abilito i cookies mi da' sempre i seguenti errori:


Warning: Undefined variable: phpPoll988143874 in c:\.......\phppollcollector.php on line 120

Warning: Cannot add header information - headers already sent by (output started at c:\.......\phppollcollector.php:120) in c:\.......\phppollcollector.php on line 125

Warning: Cannot add header information - headers already sent by (output started at c:\.......\phppollcollector.php:120) in c:\.......\phppollcollector.php on line 165


Se ho capito bene, non riesce a creare il biscottino... in effetti non c'è traccia di tale cookie nel mio sistema, anche se essi sono abilitati. Con altre applicazioni (e.g. phpBB) i cookies vengono creati senza problemi.

Qualcuno ha qualche soluzione?

EcHo2K
27-04-2001, 18.20.49
ti aiuterei, ma non ho mai usato phpPolls e non ho nenache idea di come funzichi...non e' che per caso devi settare qualke parametro in PHP.ini??? dai un'okkiata ai vari readme che ci sono coi sorgenti!

quipo.it
28-04-2001, 09.45.58
ai sorgenti di phpPolls dici? Tutto quanto era richiesto l'ho già fatto... mah! Oppure sai consigliarmi qualche altro script flessibile per polls (con mysql)? Thanx

[Edited by quipo.it on 28-04-2001 at 09:27]

Etabeta
28-04-2001, 15.32.00
echo....però se aspetta un po..prima o poi potrebbe usare....eh? ;)

quipo.it
28-04-2001, 19.31.48
;)

quipo.it
28-04-2001, 19.32.36
beh, io ho tempo al massimo un mese... se non trovo una soluzione per allora, sono costretto a disabilitare i cookies, e sperare che tutti siano onesti e votino una volta sola! Non ho tempo per scrivermelo io, lo script, ora! Ngà!

quipo.it
29-04-2001, 18.56.20
Questa è la funzione incriminata.
Non mi convince molto la riga 18: perché c'è una variabile
di variabile? Eppure se metto un solo '$' spariscono non solo i warning ma anche la protezione sul voto...



1 if($poll_setCookies == 1)
2 {
3 // we have to check for cookies, so get timestamp of this poll
4 $poll_result = mysql_db_query($poll_dbName, "SELECT timeStamp FROM $poll_descTableName WHERE 5 pollID=$poll_id");
6
7 if(!$poll_result)
8 {
9 echo mysql_errno(). ": ".mysql_error(). "<br>";
10 exit();
11 }
12
13 $poll_object = mysql_fetch_object($poll_result);
14 $poll_timeStamp = $poll_object->timeStamp;
15
16 $poll_cookieName = $poll_cookiePrefix.$poll_timeStamp;
17 // check if cookie exists
18 if($$poll_cookieName == "1")
19 // cookie exists, invalidate this vote
20 $poll_voteValid = 0;
21 else
22 // cookie does not exist yet, set one now
23 setCookie("$poll_cookieName", "1");
24
25 }

EcHo2K
30-04-2001, 13.10.38
prova cosi:

16 $poll_cookieName = $poll_cookiePrefix.$poll_timeStamp;
17 // check if cookie exists
18 if( $HTTP_COOKIE_VARS["poll_cookieName"] == "1"){
19 // cookie exists, invalidate this vote
20 $poll_voteValid = 0;
21 }else{
22 // cookie does not exist yet, set one now
23 setCookie("$poll_cookieName", "1");
24 }

non so se funzia, pero' prova. Per quanto riguarda la "doppia varibile" mi sa che deve essere uno shortcut per qualkosa che non consoco.
Comunque fai in modo che la funzione veda $HTTP_COOKIE_VARS(), mettila globale o passagliela con la chiamata...okkio che e' un array...

quipo.it
30-04-2001, 16.08.39
Neanche così funzionava...
però, dopo innumerevoli altri tentativi,
ho provato a mettere così:

18 if(isset($$poll_cookieName) AND $$poll_cookieName==1)

(probabilmente la seconda parte non serve nemmeno...)

e a quanto pare tutto è risolto. Ma perché?!?
Voglio dire... è lo stesso problema dell'altra volta...
se non metto isset non va bene! Evidentemente il problema deve avere a che fare con la mia configurazione del PHP... eppure ne ho fatta una assolutamente standard, essendo la prima volta che lo installavo ho seguìto le istruzioni passo a passo (già proprio come le scimmie ;))! Misteri del PHP! :D
Cmq, tutto bene quel che finisce bene ;).

Altro mistero: io continuo a non vedere il cookie...
Lo script funge lo stesso perché archivia nel db l'ip del votante, ma dove si nasconde il biscottino... ?!?
Sono abilitati, e funzionano correttamente per tutto il resto!

Di' un po', Echo2k, quand'è che posso ricambiare con il C?
Nessun dubbio finora? O non hai ancora cominciato? Ciaü e grazie!

EcHo2K
30-04-2001, 17.08.14
no non ho ancora cominciato a perdermici col C... voglio prima portare in fonto il mio progettino su sourceforge, poi si vedra'...

e' che ho sempre voluto imparare il C, ma per quello che faccio in genere non mi serve e quindi non ho lo stimolo...

una domanda ma tu PHP lo stai girando sotto windows o sotto UNIX?

quipo.it
30-04-2001, 18.36.17
Win2k... avevo fatto un tentativo con Linux (Debian - 2.2 potato), ma si è cimito l'HD proprio quando ero finalmente riuscito a configurare tutto (1 mese di tempo, visto che era la mia prima esperienza di Linux ed ho voluto cominciare subito con la distro più tecnica...), e mi sono un po' demoralizzato. Così ora aspetto intanto una versione un po' più umana della Debian, poi magari anche di aver PARECCHIO tempo libero da dedicargli per capirlo a fondo... ;)

quipo.it
30-04-2001, 18.42.58
Originally posted by EcHo2K
no non ho ancora cominciato a perdermici col C... voglio prima portare in fonto il mio progettino su sourceforge, poi si vedra'...

Ti capisco... se non hai la necessità di usarlo, è difficile trovare le motivazioni per imparare un nuovo linguaggio di programmazione...
Cmq, tu che sai il PHP così bene non avrai difficoltà a capire il C... anzi, forse puoi evitare di comprare tutorials e andare direttamente alla guida di riferimento (la Bibbia...) del C, ovvero il Kernighan - Ritchie (che tra l'altro somiglia un po' come stile al manuale del php su php.net...), anche se il Jack Purdum (che ti avevo consigliato) è anche molto valido e completo, senza cadere mai sul banale... d'altronde è un libro della Jackson, non una di quelle guiducole che trovi in edicola tipo "Imparare a mangiare in 24 ore"... :D