controllo if non funziona

scatenato

Nuovo Utente
13 Giu 2014
28
0
0
napoli
ciao e ringrazio in anticipo tutti voi che risponderete a questa discussione.

vi spiego subito il mio problema che non riesco a risolvere,ho provato in vari modi e proprio non riesco a risolvere.

ho questa pagina dove l'utente deve creare la propria formazione tramite questo form,e stato creato un conteggio automatico in javascript con il limite a 250 con un avviso di superamento ,ora vorrei farlo anche in php e se superato non puo registrare la formazione nel db.
qui c'e il codice completo potete dare un occhiata e dirmi dove sbaglio.
PHP:
<?php
 $sql = "SELECT * FROM portieri ORDER BY calciatore";
$result = mysql_query($sql);
$prodotti = array();
while ($row = mysql_fetch_array($result)) {
    $portiere[$row["calciatore"]] = $row["calciatore"] . " - " . $row["costo"] . " - ( " . $row["squadra"] . " ) ";
}

$sql = "SELECT * FROM difensori ORDER BY calciatore";
$result = mysql_query($sql);
$prodotti = array();
while ($row = mysql_fetch_array($result)) {
    $difensore[$row["calciatore"]] = $row["calciatore"] . " - " . $row["costo"] . " - ( " . $row["squadra"] . " ) ";
}

$sql = "SELECT * FROM centrocampisti ORDER BY calciatore";
$result = mysql_query($sql);
$prodotti = array();
while ($row = mysql_fetch_array($result)) {
    $centrocampista[$row["calciatore"]] = $row["calciatore"] . " - " . $row["costo"] . " - ( " . $row["squadra"] . " ) ";
}

$sql = "SELECT * FROM attaccanti ORDER BY calciatore";
$result = mysql_query($sql);
$prodotti = array();
while ($row = mysql_fetch_array($result)) {
    $attaccante[$row["calciatore"]] = $row["calciatore"] . " - " . $row["costo"] . " - ( " . $row["squadra"] . " ) ";
}
?>
   <?php
   //$q = "SELECT id_utente FROM formazione WHERE id_utente=".$_SESSION['auth'];
  // var_dump($q); echo "<br>";//verifiche che venga come vuoi che venga 
//$ris=mysql_query($q); 
//var_dump($q); echo "<br>"; 
  if(mysql_num_rows(mysql_query("SELECT id_utente FROM formazione WHERE id_utente=".$_SESSION['auth'])) > 0){ 
    //l'utente ha già inserito e rimandi dove vuoi 
	echo "<div id='con_formazione'>hai gia creato la formazione. <a href='rosa.php'>visualizza</a></div>";
}else{ 
    //fai vedere il form per fare l'inserimento   
   ?>
    
  <form id="articoli" name="giocatori" method="POST" action="<?php echo $_SERVER["PHP_SELF"] ;  ?>">
     <div id="punti_1">  <span>Punti</span>
      
      <div id="punti"> 
      <script type="text/javascript">
    function calcolaPunti() {
		var p1 = p2 = p3 = d1 = d2 = d3 = d4 = d5 = d6 = d7 = d8 = c1 = c2 = c3 = c4 = c5 =c6 = c7 = c8 = a1 = a2 =a3 = a4 = a5 = a6 =0;
        var g1 = document.giocatori.portiere1.options[document.giocatori.portiere1.selectedIndex].text.split("-");
		if(!isNaN(g1[1]))p1 = parseInt(g1[1]);
        var g2 = document.giocatori.portiere2.options[document.giocatori.portiere2.selectedIndex].text.split("-");
        if(!isNaN(g2[1]))p2 = parseInt(g2[1]);
        var g3 = document.giocatori.portiere3.options[document.giocatori.portiere3.selectedIndex].text.split("-");
        if(!isNaN(g3[1]))p3 = parseInt(g3[1]);
		/* calcolo per difensori*/
        var g4 = document.giocatori.difensore1.options[document.giocatori.difensore1.selectedIndex].text.split("-");
        if(!isNaN(g4[1]))d1 = parseInt(g4[1]);
        var g5 = document.giocatori.difensore2.options[document.giocatori.difensore2.selectedIndex].text.split("-");
        if(!isNaN(g5[1]))d2 = parseInt(g5[1]);
        var g6 = document.giocatori.difensore3.options[document.giocatori.difensore3.selectedIndex].text.split("-");
        if(!isNaN(g6[1]))d3 = parseInt(g6[1]);
		var g7 = document.giocatori.difensore4.options[document.giocatori.difensore4.selectedIndex].text.split("-");
        if(!isNaN(g7[1]))d4 = parseInt(g7[1]);
        var g8 = document.giocatori.difensore5.options[document.giocatori.difensore5.selectedIndex].text.split("-");
        if(!isNaN(g8[1]))d5 = parseInt(g8[1]);
        var g9 = document.giocatori.difensore6.options[document.giocatori.difensore6.selectedIndex].text.split("-");
        if(!isNaN(g9[1]))d6 = parseInt(g9[1]);
		var g10 = document.giocatori.difensore7.options[document.giocatori.difensore7.selectedIndex].text.split("-");
        if(!isNaN(g10[1]))d7 = parseInt(g10[1]);
        var g11 = document.giocatori.difensore8.options[document.giocatori.difensore8.selectedIndex].text.split("-");
        if(!isNaN(g11[1]))d8 = parseInt(g11[1]);
		/* calcolo per centrocampisti*/
		var g12 = document.giocatori.centrocampista1.options[document.giocatori.centrocampista1.selectedIndex].text.split("-");
        if(!isNaN(g12[1]))c1 = parseInt(g12[1]);
		var g13 = document.giocatori.centrocampista2.options[document.giocatori.centrocampista2.selectedIndex].text.split("-");
        if(!isNaN(g13[1]))c2 = parseInt(g13[1]);
		var g14 = document.giocatori.centrocampista3.options[document.giocatori.centrocampista3.selectedIndex].text.split("-");
        if(!isNaN(g14[1]))c3 = parseInt(g14[1]);
		var g15 = document.giocatori.centrocampista4.options[document.giocatori.centrocampista4.selectedIndex].text.split("-");
        if(!isNaN(g15[1]))c4 = parseInt(g15[1]);
		var g16 = document.giocatori.centrocampista5.options[document.giocatori.centrocampista5.selectedIndex].text.split("-");
        if(!isNaN(g16[1]))c5 = parseInt(g16[1]);
		var g17 = document.giocatori.centrocampista6.options[document.giocatori.centrocampista6.selectedIndex].text.split("-");
        if(!isNaN(g17[1]))c6 = parseInt(g17[1]);
		var g18 = document.giocatori.centrocampista7.options[document.giocatori.centrocampista7.selectedIndex].text.split("-");
        if(!isNaN(g18[1]))c7 = parseInt(g18[1]);
		var g19 = document.giocatori.centrocampista8.options[document.giocatori.centrocampista8.selectedIndex].text.split("-");
        if(!isNaN(g19[1]))c8 = parseInt(g19[1]);
		/* calcolo per attaccanti*/
		var g20 = document.giocatori.attaccante1.options[document.giocatori.attaccante1.selectedIndex].text.split("-");
        if(!isNaN(g20[1]))a1 = parseInt(g20[1]);
		var g21 = document.giocatori.attaccante2.options[document.giocatori.attaccante2.selectedIndex].text.split("-");
        if(!isNaN(g21[1]))a2 = parseInt(g21[1]);
		var g22 = document.giocatori.attaccante3.options[document.giocatori.attaccante3.selectedIndex].text.split("-");
        if(!isNaN(g22[1]))a3 = parseInt(g22[1]);
		var g23 = document.giocatori.attaccante4.options[document.giocatori.attaccante4.selectedIndex].text.split("-");
        if(!isNaN(g23[1]))a4 = parseInt(g23[1]);
		var g24 = document.giocatori.attaccante5.options[document.giocatori.attaccante5.selectedIndex].text.split("-");
        if(!isNaN(g24[1]))a5 = parseInt(g24[1]);
		var g25 = document.giocatori.attaccante6.options[document.giocatori.attaccante6.selectedIndex].text.split("-");
        if(!isNaN(g25[1]))a6 = parseInt(g25[1]);
		var $risultato = document.getElementById("punti").innerHTML = (p1 + p2 + p3 + d1 + d2 + d3 + d4 + d5+ d6 + d7 + d8 + c1 + c2 + c3 + c4 + c5 + c6 + c7 + c8 + a1 + a2 + a3 + a4 + a5 + a6 );
        if($risultato > 250) alert ("hai superato i 250 fantamilioni disponibili per creare la tua formazione, effettua le dovute modifiche ho non potrai registrare la tua formazione.")
    }
</script>
      </div><!--fine div punti-->
      
      </div>
       <div id="con_formazione">
     <?php
	 if(isset($_POST['crea_formazione'])){
	               extract($_POST);
				   
	       $id_utente = $_SESSION['auth'];
	$risultato= $portiere1 + $portiere2 + $portiere3 + $difensore1 + $difensore2 + $difensore3 + $difensore4 + $difensore5 + $difensore6 + $difensore7 + $difensore8 + $centrocampista1 + $centrocampista2 + $centrocampista3 + $centrocampista4 + $centrocampista5 + $centrocampista6 + $centrocampista7 + $centrocampista8 + $attaccante1 + $attaccante2 + $attaccante3 + $attaccante4 + $attaccante5 + $attaccante6;
	
if(empty($portiere1) && empty($portiere2) && empty($portiere3) && empty($difensore1) && empty($difensore2) && empty($difensore3) && empty($difensore4) && empty($difensore5) && empty($difensore6) && empty($difensore7) && empty($difensore8) && empty($centrocampista1) && empty($centrocampista2) && empty($centrocampista3) && empty($centrocampista4) && empty($centrocampista5) && empty($centrocampista6) && empty($centrocampista7) && empty($centrocampista8) && empty($attaccante1) && empty($attaccante2) && empty($attaccante3) && empty($attaccante4) && empty($attaccante5) && empty($attaccante6)) {
		echo 'La formazione non e completa. <a href="javascript:history.back();">indietro</a>';
        
        }elseif($risultato < 250){
			
		echo 'hai superato i 250 fantamilioni disponibili per creare la tua formazione, effettua le dovute modifiche ho non potrai registrare la tua formazione. <a href="javascript:history.back();">modifica</a>';
		
		}else if(mysql_query("INSERT INTO formazione (id_utente, portiere1, portiere2, portiere3, difensore1, difensore2, difensore3, difensore4, difensore5, difensore6, difensore7, difensore8, centrocampista1, centrocampista2, centrocampista3, centrocampista4, centrocampista5, centrocampista6, centrocampista7,  centrocampista8, attaccante1, attaccante2, attaccante3, attaccante4, attaccante5, attaccante6) VALUES ('$id_utente','$portiere1','$portiere2','$portiere3','$difensore1','$difensore2','$difensore3','$difensore4','$difensore5','$difensore6','$difensore7','$difensore8','$centrocampista1','$centrocampista2','$centrocampista3','$centrocampista4','$centrocampista5','$centrocampista6','$centrocampista7','$centrocampista8','$attaccante1','$attaccante2','$attaccante3','$attaccante4','$attaccante5','$attaccante6')" ) or die (mysql_error())){
			
			echo "formazione creata con successo. <a href='rosa.php'>visualizza</a>";
			
				}
				
		 }
			?> 
		  </div> 
   
    <label>Portieri</label> 
    <select  onchange="calcolaPunti();" name="portiere1">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($portiere as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>

    <select onchange="calcolaPunti();" name="portiere2">
    <option value="0">seleziona giocatore</option>  
        <?php
        foreach ($portiere as $calciatore => $value) {
            echo"<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="portiere3">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($portiere as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    
     <label>Difensori</label> 
     
    <select  onchange="calcolaPunti();" name="difensore1">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($difensore as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>

    <select onchange="calcolaPunti();" name="difensore2">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($difensore as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="difensore3"> 
    <option value="0">seleziona giocatore</option>
        <?php
        foreach ($difensore as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
      
    <select  onchange="calcolaPunti();" name="difensore4">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($difensore as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>

    <select onchange="calcolaPunti();" name="difensore5">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($difensore as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="difensore6">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($difensore as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="difensore7">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($difensore as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="difensore8">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($difensore as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    
    <label>Centrocampisti</label>
    
    <select onchange="calcolaPunti();" name="centrocampista1">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($centrocampista as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="centrocampista2">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($centrocampista as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="centrocampista3">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($centrocampista as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="centrocampista4"> 
    <option value="0">seleziona giocatore</option>
        <?php
        foreach ($centrocampista as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="centrocampista5">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($centrocampista as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="centrocampista6">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($centrocampista as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="centrocampista7">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($centrocampista as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="centrocampista8">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($centrocampista as $calciatore  => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    
     <label>Attaccanti</label>
     
     <select onchange="calcolaPunti();" name="attaccante1"> 
     <option value="0">seleziona giocatore</option>
        <?php
        foreach ($attaccante as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="attaccante2">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($attaccante as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="attaccante3">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($attaccante as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="attaccante4">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($attaccante as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="attaccante5">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($attaccante as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
    <select onchange="calcolaPunti();" name="attaccante6">
    <option value="0">seleziona giocatore</option> 
        <?php
        foreach ($attaccante as $calciatore => $value) {
            echo "<option value='$calciatore'>$value</option>";
        }
        ?>
    </select>
     
     
    
     <input  type="submit" name="crea_formazione" value="Crea Formazione" >
     
     <input  type="reset" name="cancella" value="Cancella" >
 

     
	  
     
      
    
  </form>

  <?php
      
	  
}//fine sessione

  
?> 
    </div><!-- fine div crea rosa-->
 
il problema e che l'utente quando seleziona tutti i record negli input non deve superare i 250 e non puo effettuare l'inserimento nel db e solo se non lo supera deve eseguire l'inserimento nel db.
io ho postato tutto il codice del form per far capire e vedere tutto il codice legato al form.

questo e quello che ho creato per il controllo if elseif.
PHP:
 <?php 
     if(isset($_POST['crea_formazione'])){ 
                   extract($_POST); 
                    
           $id_utente = $_SESSION['auth']; 
    $risultato= $portiere1 + $portiere2 + $portiere3 + $difensore1 + $difensore2 + $difensore3 + $difensore4 + $difensore5 + $difensore6 + $difensore7 + $difensore8 + $centrocampista1 + $centrocampista2 + $centrocampista3 + $centrocampista4 + $centrocampista5 + $centrocampista6 + $centrocampista7 + $centrocampista8 + $attaccante1 + $attaccante2 + $attaccante3 + $attaccante4 + $attaccante5 + $attaccante6; 
     
if(empty($portiere1) && empty($portiere2) && empty($portiere3) && empty($difensore1) && empty($difensore2) && empty($difensore3) && empty($difensore4) && empty($difensore5) && empty($difensore6) && empty($difensore7) && empty($difensore8) && empty($centrocampista1) && empty($centrocampista2) && empty($centrocampista3) && empty($centrocampista4) && empty($centrocampista5) && empty($centrocampista6) && empty($centrocampista7) && empty($centrocampista8) && empty($attaccante1) && empty($attaccante2) && empty($attaccante3) && empty($attaccante4) && empty($attaccante5) && empty($attaccante6)) { 
        echo 'La formazione non e completa. <a href="javascript:history.back();">indietro</a>'; 
         
        }elseif($risultato > 250){ 
             
        echo 'hai superato i 250 fantamilioni disponibili per creare la tua formazione, effettua le dovute modifiche ho non potrai registrare la tua formazione. <a href="javascript:history.back();">modifica</a>'; 
         
        }else if(mysql_query("INSERT INTO formazione (id_utente, portiere1, portiere2, portiere3, difensore1, difensore2, difensore3, difensore4, difensore5, difensore6, difensore7, difensore8, centrocampista1, centrocampista2, centrocampista3, centrocampista4, centrocampista5, centrocampista6, centrocampista7,  centrocampista8, attaccante1, attaccante2, attaccante3, attaccante4, attaccante5, attaccante6) VALUES ('$id_utente','$portiere1','$portiere2','$portiere3','$difensore1','$difensore2','$difensore3','$difensore4','$difensore5','$difensore6','$difensore7','$difensore8','$centrocampista1','$centrocampista2','$centrocampista3','$centrocampista4','$centrocampista5','$centrocampista6','$centrocampista7','$centrocampista8','$attaccante1','$attaccante2','$attaccante3','$attaccante4','$attaccante5','$attaccante6')" ) or die (mysql_error())){ 
             
            echo "formazione creata con successo. <a href='rosa.php'>visualizza</a>"; 
             
                } 
                 
         } 
            ?>
 
forse non ho specificato una cosa il valore numerico lo prende dal db e non viene inserito da l'utente nell'input ,quindi come faccio a prendere quel valore chiamato costo nel db e fallo sommare.
 
Nei linguaggi di classe ECMA (C/C++/Java/Javascript/PHP) istruzioni come
while ($row = mysql_fetch_array($result))
possono dare problemi; si usa la sintassi
while ($variabile == valore)
 

Discussioni simili