Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 20 su 20

Discussione: conta click

  1. #11
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Tranquilla, qui nessuno ride di nessuno è importante però, soprattutto nell'ambito della programmazione, che ci si impegni a scrivere del codice chiaro, pulito e leggibile.
    A prescindere da questo, vedo che manca uno spazio prima dello <span>
    [code] è stata cliccata<span id="contaclick">...</span> volte.</p>[code]
    Non ho idea del perché venga aggiunto successivamente al click. E' possibile che influisca in qualche modo il "poco ordine" nel codice html.

    Riguardo al non funzionamento del php, verifica che sul file contatore.dat siano impostati i permessi di scrittura (potresti impostarli con un valore 755). Ho notato infatti che il tuo file php restituisce degli errori nell'apertura del file dati.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  2. #12
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    32
    semplifichiamo il tutto: ho fatto una pagina con il codice html pulito, solo col contaclick, il file dat e il file php, ho dato i permessi in 755, (ho provato anche con 777 ma niente).... stesso problema, al click vedi che si sposta il valore 0 ma non incrementa..... che errore dava php che non riesco a vederlo?:-( http://www.karindaberto.com/prova/x.html

    Ultima modifica di Fari; 21-05-2014 a 12:34

  3. #13
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Il php genera lo stesso errore anche ora. Puoi vederlo semplicemente aprendo tale pagina:
    www.karindaberto.com/prova/contatore.php

    Se sei su server windows e possibile che ci sia una cartella tipo "public".
    Se fosse così allora non hai comunque permessi di scrittura per qualsiasi file che non stia dentro quella cartella.
    In tal caso basterà spostare contatore.dat su quella cartella, avendo cura di modificare il riferimento a quel file anche sugli script.

    Sul jQuery potresti quindi avere una cosa tipo:
    codice:
    $("#contaclick").load("../public/contatore.dat")
    lo stesso sul php:
    codice:
    $filedati = '../public/contatore.dat';
    Per lo spazio che viene aggiunto al clic, continuo a non capire da cosa possa dipendere.
    Cerca comunque di risolvere prima il problema di scrittura.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  4. #14
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    32
    Ci siamo quasi.... server windows infatti... sto approfittando troppo della tua pazienza, scusami...
    Ho aggiornato tutto: ora, se clicco si crea sempre lo spazio vicino allo 0, pero' se vado ad aprire il contatore.php mi da correttamente il numero n+1 corrispondente al click appena fatto, di seguito se torno sulla pagina e ri-clicco sul cuore, appare il numero 1, ma se di nuovo vado sul contatore mi da #2 , se torno sulla pagina c'e' sempre #1 e cliccando su immagine viene il #2.. e cosi' via....sembra che non aggiorni in automatico il valore letto sul .php del .dat..... http://www.karindaberto.com/prova/x.html

  5. #15
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Bene, (tieni conto che mi devi una pizza ).

    Per lo spazio non puoi semplicemente lasciarlo prima dello span?
    codice:
    <p>Questa immagine è stata cliccata <span id="contaclick">...</span> volte.</p>

    In questo modo si manterrà sempre uno spazio prima e uno dopo il numero.

    Ora cerchiamo di capire perché non va il php quando si clicca.. faccio qualche prova e ti aggiorno
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  6. #16
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ho fatto qualche prova.
    Sembra che ci sia qualcosa che non vada nello script php quando questo è richiamato da ajax.
    Probabilmente non viene verificata questa condizione: if(!strstr($HTTP_SERVER_VARS['HTTP_REFERER'], $hostvisit)) {

    Ho preso questo codice così come era sul file originario.
    Quella specifica condizione dovrebbe essere semplicemente una misura di sicurezza per assicurarsi che la pagina chiamante sia effettivamente quella del sito in cui si trova la stessa pagina php, ed evitare quindi chiamate esterne da eventuali malintenzionati.

    Ad ogni modo prova semplicemente a toglierla semplificando il codice in questo modo:
    codice:
    <?php
    // il file dati
    $filedati = 'contatore.dat';
    // se non esiste, creo il file dati automaticamente
    if (!file_exists($filedati)) {
        $aprifile = fopen($filedati,'w');
        fwrite($aprifile,'0');
    }
    // leggo e aggiorno il valore sul file dati
    $aprifile = fopen($filedati,'r');
    $conta = fgets($aprifile);
    
    $conta++;
    $aprifile = fopen($filedati,'w');
    fwrite($aprifile,$conta);
    
    // restituisco il valore aggiornato
    echo $conta;
    ?>
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  7. #17
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    32
    nuu...... nulla... anzi ora mi da 5 errori su php righe 6 7 10 11 14.... non pensavo fosse cosi' complesso... sigh....

  8. #18
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    aspetta..

    sull'ultimo codice postato va comunque modificata la prima riga col giusto indirizzo del file dati:
    codice:
    $filedati = '../public/contatore.dat';
    verifica e fammi sapere
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  9. #19
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    32
    FANTASTICOOOO!ora sì funziona! mi era sfuggito il riferimento della cartella! grazie grazie grazie!
    ora mi metto a litigare un po' con la funzione onclick per farla coincidere con il contatore.... ci provo, spero di riuscirci da sola.
    baci!

  10. #20
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Bene ...chi la dura la vince!

    Ciao, buon proseguimento.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.