Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    I Valori immessi non devono superare 10...

    Sto realizzando un sito, con una specie di gioco di ruolo online in PHP / MySql.


    In uno dei tanti form che servono al gioco, l'utente deve assegnare dei valori alle caratteristiche del proprio personaggio.

    ----

    <form id="form1" name="form1" method="post" action="">
    <label>
    <select name="a" id="a">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select>
    </label>
    <select name="b" id="b">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select>
    <select name="c" id="c">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select>
    <select name="d" id="d">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select>
    <select name="e" id="e">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    </select>
    il valore totale non deve superare 10
    </form>

    ----

    Come vedete ci sono 5 moduli, dove si possono scegliere valori da 1 a 5. Alla fine delle selezioni però vorrei che la somma totale dei valori immessi dall'utente non superi 10.

    Ovvero: se l'utente mette nel primo form 2, nel secondo 4, nel terzo 1 e nel quarto 1, nel quinto dovrebbero apparire solo i valori "1" e "2", in modo che la somma totale non possa in alcun caso superare 10.

    E' possibile?

  2. #2
    prova cosi:
    Codice PHP:
    foreach($_POST as $key => $value) { 
    $somma array_sum($value);
     
    }
    if(
    $somma 10){echo "Limite massimo";}
    else
    {
    echo 
    "ci stai dentro";

    non l'ho provato dimmi tu

  3. #3
    Originariamente inviato da stefano3804
    prova cosi:
    Codice PHP:
    foreach($_POST as $key => $value) { 
    $somma array_sum($value);
     
    }
    if(
    $somma 10){echo "Limite massimo";}
    else
    {
    echo 
    "ci stai dentro";

    non l'ho provato dimmi tu
    Ma devo inserirlo nella pagina col modulo o in quella successiva come controllo?

  4. #4
    Se vuoi il tutto nella stessa pagina, dovresti fare un javascript che ad ogni modifica dei select controlla la somma e modifica i successivi.
    Altrimenti puoi spezzare il tutto in più pagine, facendo le verifiche in php.
    Oppure puoi far verificare la somma all'invio del form, o con un javascript alla pressione del submit, o in php, riportandoti al form in caso di somma maggiore di 10.
    Sarò stato troppo contorto? :master:

    il Possibile l'ho già fatto
    l'Impossibile lo sto facendo
    per i Miracoli ci vuole un po' di tempo
    __________________
    &nbsp; ...quanto sono pirla...

  5. #5
    Originariamente inviato da Lacasadipaolo
    Ma devo inserirlo nella pagina col modulo o in quella successiva come controllo?
    in uqella successiva

  6. #6
    lo devi mettere dove ricevi i dati

    vedi che funziona con il valori $_POST .

  7. #7
    Originariamente inviato da stefano3804
    lo devi mettere dove ricevi i dati

    vedi che funziona con il valori $_POST .
    Infatti.
    Però quello che volevo fare io erano dei moduli che si aggiornavano in automatico in base ai valori immessi, senza dover passare da una pagina di controllo.

  8. #8
    allora lo devi fare in js o ajax

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.