Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: [php]form

  1. #1

    [php]form

    Salve a tutti!!
    Sto creado uno script con php per fare un sondaggio.Ho dei problemi
    con il form i valori inviati non vengono considerati dallo script
    dove è l'errore??
    Non riesco a capire dov'è!

    index.php

    <html>
    <body>
    <form method=post action=function.php>
    <input type=checkbox name="elemento1" value="1">-Elemento1

    <input type=checkbox name="elemento2" value="2">-Elemento2

    <input type=submit value=Vota!>
    </form>
    </body>
    </html>

    function.php

    <?
    //funzione
    function incremento($filename) {
    //controlla se il file esiste
    if (file_exists($filename)) {
    //lo apre
    $voti = fopen("voti1.txt", "a+");
    //prende i dati
    $buffer = fgets($voti);
    //lo incrementando di uno
    ++$buffer;
    //riapre il file e lo pulisce
    $voti = fopen("voti1.txt", "wb");
    //scrive il valore incrementato
    fwrite($voti, $buffer);
    //lo chiude
    fclose($voti);
    //lo stampa
    print("<img src=\"copper.jpg\" height=7 width=$buffer border=1> $buffer");
    } else {
    echo('Il file non esiste');
    }
    }


    $filename1 = 'voti1.txt';
    $filename2 = 'voti2.txt';
    $_post['elemento1']=$variabili;
    $_post['elemento2']=$variabili;

    switch ($variabili) {
    case '1':
    $bo = incremento($filename1);
    break;
    case '2':
    $bo = incremento($filename2);
    break;
    default:
    print "non ha riconosciuto nessun parametro";
    }
    ?>

  2. #2
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    codice:
    $filename1 = 'voti1.txt';
    $filename2 = 'voti2.txt';
    if (isset($_POST['elemento1']))
        incremento($filename1);
    elseif (isset($_POST['elemento2']))
        incremento($filename2);
    else
        print "non ha riconosciuto nessun parametro";
    think simple think ringo

  3. #3
    Non e' chiarissimo ad una prima occhiata.... pero' questo:

    $_post['elemento1']=$variabili;
    $_post['elemento2']=$variabili;

    e' errato. l'array post va scritto con le maiuscole $_POST perche' e' case sensitive. Se poi volevi passare i valori di post devi posizionare i dati al contrario, cioe' a sx dell'uguale la destinazione, a dx l'origine, quindi:

    $variabili = $_POST['elemento1'];
    $variabili = $_POST['elemento2'];

    Pero' cosi' in $variabili avrai solo elemento2.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4
    Adesso mi scrive sul file voti1.txt indiferentemente se voto su
    elemento1
    o
    elemento2!

    <?
    //funzione
    function incremento($filename) {
    //controlla se il file esiste
    if (file_exists($filename)) {
    //lo apre
    $voti = fopen("voti1.txt", "a+");
    //prende i dati
    $buffer = fgets($voti);
    //lo incrementando di uno
    ++$buffer;
    //riapre il file e lo pulisce
    $voti = fopen("voti1.txt", "wb");
    //scrive il valore incrementato
    fwrite($voti, $buffer);
    //lo chiude
    fclose($voti);
    //lo stampa
    print("<img src=\"copper.jpg\" height=7 width=$buffer border=1> $buffer");
    } else {
    echo('Il file non esiste');
    }
    }



    $_post['elemento1']=$variabili;
    $_post['elemento2']=$variabili;

    $filename1 = 'voti1.txt';
    $filename2 = 'voti2.txt';
    if (isset($_POST['elemento1']))
    incremento($filename1);
    elseif (isset($_POST['elemento2']))
    incremento($filename2);
    else
    print "non ha riconosciuto nessun parametro";

    ?>

  5. #5
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    $_post['elemento1']=$variabili;
    $_post['elemento2']=$variabili;
    questa cosa non funziona...leggi il post di piero.mac


    prova così:
    codice:
    $filename1 = 'voti1.txt';
    $filename2 = 'voti2.txt';
    if (isset($_POST['elemento1']) && $_POST['elemento1'] == 1)
        incremento($filename1);
    elseif (isset($_POST['elemento2']) && $_POST['elemento1'] == 2)
        incremento($filename2);
    else
        print "non ha riconosciuto nessun parametro";
    think simple think ringo

  6. #6
    Adesso ho un altro problema mi scrive tutto su voti1.txt!

    <?
    //funzione
    function incremento($filename) {
    //controlla se il file esiste
    if (file_exists($filename)) {
    //lo apre
    $voti = fopen("voti1.txt", "a+");
    //prende i dati
    $buffer = fgets($voti);
    //lo incrementando di uno
    ++$buffer;
    //riapre il file e lo pulisce
    $voti = fopen("voti1.txt", "wb");
    //scrive il valore incrementato
    fwrite($voti, $buffer);
    //lo chiude
    fclose($voti);
    //lo stampa
    print("<img src=\"copper.jpg\" height=7 width=$buffer border=1> $buffer");
    } else {
    echo('Il file non esiste');
    }
    }



    $variabili = $_POST['elemento1'];
    $variabili = $_POST['elemento2'];



    $filename1 = 'voti1.txt';
    $filename2 = 'voti2.txt';
    if (isset($_POST['elemento1']))
    incremento($filename1);
    elseif (isset($_POST['elemento2']))
    incremento($filename2);
    else
    print "non ha riconosciuto nessun parametro";
    ?>

  7. #7
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    prova così:
    codice:
    $filename1 = 'voti1.txt';
    $filename2 = 'voti2.txt';
    if (isset($_POST['elemento1']) && $_POST['elemento1'] == 1)
        incremento($filename1);
    elseif (isset($_POST['elemento2']) && $_POST['elemento2'] == 2)
        incremento($filename2);
    else
        print "non ha riconosciuto nessun parametro";
    think simple think ringo

  8. #8
    se setto su elemento1 mi incrementa il valore nel file voti1.txt
    se setto su elemento2 mi dice non ha riconosciuto nessun parametro

    <?
    //funzione
    function incremento($filename) {
    //controlla se il file esiste
    if (file_exists($filename)) {
    //lo apre
    $voti = fopen("voti1.txt", "a+");
    //prende i dati
    $buffer = fgets($voti);
    //lo incrementando di uno
    ++$buffer;
    //riapre il file e lo pulisce
    $voti = fopen("voti1.txt", "wb");
    //scrive il valore incrementato
    fwrite($voti, $buffer);
    //lo chiude
    fclose($voti);
    //lo stampa
    print("<img src=\"copper.jpg\" height=7 width=$buffer border=1> $buffer");
    } else {
    echo('Il file non esiste');
    }
    }



    $variabili = $_POST['elemento1'];
    $variabili = $_POST['elemento2'];



    $filename1 = 'voti1.txt';
    $filename2 = 'voti2.txt';
    if (isset($_POST['elemento1']) && $_POST['elemento1'] == 1)
    incremento($filename1);
    elseif (isset($_POST['elemento2']) && $_POST['elemento1'] == 2)
    incremento($filename2);
    else
    print "non ha riconosciuto nessun parametro";
    ?>

  9. #9

  10. #10
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    avevo corretto la mia risposta

    elseif (isset($_POST['elemento2']) && $_POST['elemento2'] == 2)
    think simple think ringo

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.