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

    Problema con ciclo while

    Codice PHP:
    <?php
    //connessione al database
    include('connect.php');

    //sessione
    include('../sessione.php');

    //riceviamo i dati inviati dall'utente
    $caratteristica $_POST['caratteristica'];
    $durata $_POST['durata'];

    //selezioniamo i giocatori
    $team $_SESSION['username'];
    $query "SELECT * FROM GIOCATORI WHERE squadra='$team'";
    $res mysql_query($query) or die (mysql_error());
    while(
    mysql_fetch_assoc($res)){
    if(
    $durata == 'riposo') {
    echo 
    "Il giocatore riposa. </br>"; }
    if(
    $durata == 'leggero') {
    echo 
    "Il giocatore sta facendo un allenamento leggero. </br>";}
    if(
    $durata == 'medio') {
    echo 
    "Il giocatore sta facendo un allenamento medio. </br>";}
    if(
    $durata == 'intenso') {
    echo 
    "Il giocatore sta facendo un allenamento intenso. </br>";}
    //fine del while

    ?>
    Ho un problemino con questo script...io prticamente ho 1 select per ogni giocatore:"Riposo","Leggero","Medio","Intenso".
    Attraverso lo script sopra vorrei vedere postato la caratteristica selezionata diversa per ogni giocatore e invece ho notato che se uno solo ha l'opzione riposo viene fuori:

    Il giocatore riposa.
    Il giocatore riposa.
    Il giocatore riposa.
    Il giocatore riposa.
    Il giocatore riposa.
    Il giocatore riposa.
    Il giocatore riposa.
    Il giocatore riposa.

    Anche se ad esempio solo al primo avevo selezionato "Riposo"...come posso risolvere...grazie mille

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Ciao, e' ovvio, passi in post $durata = $_POST['durata'] e la usi nel ciclo.
    Questo dato arriva da post e non e' preso da db.
    Quindi nel ciclo "durata" e' sempre fisso a quello che passi.

    Presumo questo stato sia nel db e tu debbe confrontarlo con qualcosa??

  3. #3
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,592
    prova a fare

    Codice PHP:
    if($res['nomecampodovehairiposoealtreopzioni']== 'riposo') { 
    e sostituiscilo anche agli altri..

  4. #4
    non c'entra nulla con la tua domanda... ma piuttosto che usare 4 if di seguito, potresti usare uno switch:

    Codice PHP:
    while(mysql_fetch_assoc($res)){ 
      switch(
    $durata) {
        case 
    'riposo':
          echo 
    "Il giocatore riposa. </br>"
        
    break;

        
    //etc etc
     

    Disegnatori e romanzieri d'Italia, visitate il mio sito, cerchiamo favolieri dark ed illustratori dark fantasy... http://www.neilgaimania.it

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.