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

    ciclo if combinato con my sql

    Salve la pagina php mi funziona unico problema è un ciclo if che non va è quello che non si trova all'interno del codice (non l'ho messo per semplificare la lettura visto il lungo codice). In pratica in base a quello che scelgo nel form precedente dovrebbe restituirmi dei risultati (per esempio se il livello è intermedio deve restituire la stringa, se è basso deve andare ad un altra pagina(il codice ancora non l'ho fatto perchè ho gia problemi a stampare la stringa) ) ma il ciclo if combinato con mysql non funziona chi puo aiutarmi a capire l'errore??

    Codice PHP:

    http2.open('GET', 'select_abitativa.php?id_gruppo='+ idGr); 
    http2.onreadystatechange = handleResponse2; 
    http2.send(null); 
    }

    function handleResponse2() { 
    if(http2.readyState == 4){ 
    var response2 = http2.responseText; 
    document.getElementById('ciccio').innerHTML = response2; 



    </script>
    <script type="text/javascript" src="js/form/form-submit.js"></script>
        <script type="text/javascript" src="js/form/ajax2.js"></script>
    <script type="text/javascript">
    function sajax(url, onload, parameters, onerror)
    {
        parameters = (parameters == undefined)? "" : parameters;
        
        //creazione oggetto per richiesta web
        var objHTTP = getXMLHttp();
        objHTTP.open("post", url, true);
        objHTTP.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
        objHTTP.setRequestHeader('Content-length',parameters.length);
        objHTTP.setRequestHeader('Connection', 'close');

        objHTTP.onreadystatechange = function() 
        { 
            if (objHTTP.readyState == 4) 
            {
                if (objHTTP.status == 200 || objHTTP.status == 0)
                {
                    this.request = objHTTP;
                    if(onload) onload.call(this);
                }                                            
                else {if(onerror && typeof(onerror) == "function") {onerror(defaultError); return;}else {defaultError(); return;}}
            }
        };

        objHTTP.send(parameters);
        

        function getXMLHttp() 
        {
            var xmlhttp = null;
            
            if(window.XMLHttpRequest) 
            {
                xmlhttp = new XMLHttpRequest(); // Gecko (Firefox, Moz), KHTML (Konqueror, Safari), Opera, Internet Explorer 7
            } 
            else if(window.ActiveXObject) 
            {
                try
                {
                    xmlhttp = new ActiveXObject("MSXML2.XMLHTTP"); // Internet Explorer 6 
                } 
                catch(e) 
                {
                    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); // Internet Explorer 4,5 
                }
                } 
            else 
            {
                xmlhttp = null;
            }
            return xmlhttp;
        };

        function defaultError()
        {
            alert("ERRORE NELLA TRASMISSIONE DATI!");
        };
    }

    //al posto di mettere document.getElementById("div1"), mettere $("div1")
    function $() {
      var elements = new Array();

      for (var i = 0; i < arguments.length; i++) {
        var element = arguments[i];
        if (typeof element == 'string')
          element = document.getElementById(element);

        if (arguments.length == 1)
          return element;

        elements.push(element);
      }

      return elements;
    }


    </script>
    <script type="text/javascript">

    function insDati() {
         var id_sch =$("id_scheda").value;
         
         if($("sessione").value == "") {
            alert('Inserisci una sessione!'); 
         }   
         
         else if ($("gruppimuscolari").value == "")  {
            alert('Inserisci un gruppo muscolare!!'); 
         }
         
         
         else if($("esercizi").value == ""  ) {
            alert('Inserisci un esercizio!'); 
         }
         
         else if($("ripetizioni").value == ""  ) {
            alert('Inserisci le serie!'); 
         }
         
         else if($("ripetizioni1").value == ""  ) {
            alert('Inserisci le ripetizioni!'); 
         }


         
         else  {
         
         
         var parametri = "id_scheda=" + $("id_scheda").value
            + "&" + "sessione=" + $("sessione").value  + "&" + "esercizi=" + $("esercizi").value + "&" + "ripetizioni=" + $("ripetizioni").value + $("x").value + $("ripetizioni1").value + "&" + "recupero=" + $("recupero").value + "&" + "peso=" + $("peso").value + "&" + "note=" + $("note").value ;
            
        sajax("ins_eserc_scheda.php?", onload, parametri);
        
         }  /* fine else*/
        
        function onload()
        {
            /*document.location.reload(true);*/
            document.location.href='inserimento_esercizi.php?id_scheda=' + id_sch;
      
            
        }
    }

    </script> 



    <script type="text/javascript">

    function printContent(id){
    str=document.getElementById(id).innerHTML
    newwin=window.open('','printwin','left=100,top=100,width=400,height=400')
    newwin.document.write('<HTML>\n<HEAD>\n')
    newwin.document.write('<TITLE>Print Page</TITLE>\n')
    newwin.document.write('<script>\n')
    newwin.document.write('function chkstate(){\n')
    newwin.document.write('if(document.readyState=="complete"){\n')
    newwin.document.write('window.close()\n')
    newwin.document.write('}\n')
    newwin.document.write('else{\n')
    newwin.document.write('setTimeout("chkstate()",2000)\n')
    newwin.document.write('}\n')
    newwin.document.write('}\n')
    newwin.document.write('function print_win(){\n')
    newwin.document.write('window.print();\n')
    newwin.document.write('chkstate();\n')
    newwin.document.write('}\n')
    newwin.document.write('<\/script>\n')
    newwin.document.write('</HEAD>\n')
    newwin.document.write('<BODY onload="print_win()">\n')
    newwin.document.write(str)
    newwin.document.write('</BODY>\n')
    newwin.document.write('</HTML>\n')
    newwin.document.close()
    }

    </script> 
    </head>

    <body>


    <?php include("includes/menu.php"); ?>
    </div>




    <div id="nav2">

    <div style="margin-left:0">
    <img src="images/schedeallenamento.png" align="texttop" style="width:80px;border-width:0px;">
    </div>

    <h2>GESTIONE SCHEDE DI ALLENAMENTO</h2>
    <ul>

    <li><a href="sel_schede.php">Visualizza Schede</a></li>
    <li class="selected">Crea Nuova Scheda</li>
    <li><a href="mod_schede.php">Modifica Scheda</a></li>
    </li>
    </ul>
    </div>
    <div id="content">


    <div>
    <!--
    <div id="pippo2" style="border:groove"><br>  -->
    <div id="contenitore_form">




    <div id="box_sx_1" >
    <p style="margin-left:0">

    <form name="inserisci_esercizio"  action="" 
     >
     <input type="hidden" name="upload" value="ins">
    <input type="hidden" id="id_scheda"
    name="id_scheda" size="20" value="<? echo"".$id_scheda."";  ?>">



    <input type="button" name="ins" id="ins"
     value="Inserisci esercizio"  onClick="insDati()" >

    <input type="reset" class="formButton" value="Reset">

            
    </form>
    </p>
    </div>

    <div  align="center">
    <img src="images/icons5143.jpg" title="Visualizza Scheda Completa" width="22" onClick="visualizza(<? echo"".$id_scheda."" ?>)"> 
    <script type="text/javascript">
    function visualizza(id_scheda)  {


    document.location.href='mostra_schede_utente.php?id=' + id_scheda ;    
        
    }
    </script>
    &nbsp;
    <img src="images/printer.png" title="Stampa la Scheda" width="22" onClick="printContent('box_dx_1')" >
    </div>
    <br>






    <div id="box_dx_1" style="border:groove; margin-right:0; min-height:500px">
    <?php

    $obj
    ->connessione();

    $query "select * from schede join clienti
              on schede.idcliente = clienti.id 
              where id1 = '
    $id_scheda'  " ;

    $result mysql_query($query);

     while (
    $row mysql_fetch_array($result)) {
         
    $cognome=strtoupper($row['cognome']);
         
    $nome=strtoupper($row['nome']);
         
    $id_client=$row['id'];
         echo
    "<div align=\"center\"><h1>".$cognome." ".$nome."</h1>";
         echo
    "<strong>Scheda numero: ".$id_scheda."<br>";
         echo
    "<strong>Livello: ".$row['livello']."<br>";
         echo
    "Obiettivo: ".$row['obiettivo']."</strong></div><br><br><br>";
     }
    $row = mysql_fetch_array($result);
    $livello= $row['livello'];
    if ($livello=="intermedio")

    {

    echo"Non ci sono record!";

    }
    ?>

    Codice PHP:
    <br>


    <table width="100%" border="0">
     <tr >
     
      <td  width="13%" ><strong style="margin-left:1px">SESSIONE</strong></td>
      <td width="28%" ><strong style="margin-left:3px">ESERCIZIO</strong></td>
      <td width="13%"><strong style="margin-left:1px">RIPETIZIONI</strong></td>
      <td width="12%"><strong style="margin-left:1px">RECUPERO</strong></td>
      <td width="10%"><strong style="margin-left:1px">PESO</strong></td>
      <td width="10%" ><strong style="margin-left:1px">NOTE</strong></td>
      <td width="7%"><strong style="margin-left:1px">Modifica</strong></td>
      <td width="7%"><strong style="margin-left:1px">Cancella</strong></td>
    </tr>
    </table>
    <br>


    <?php
    $obj
    ->connessione();

    echo 
    "<table width=99% class=\"tableborder1\" >";

    $result mysql_query("select DISTINCT * ,sessioni.id as idsess, gruppimuscolari.nome as nomegr, esercizi.nome as nomees, esercizi.id as ides 
                            from esercizi_per_sessioni join sessioni 
                           on esercizi_per_sessioni.idsessione = sessioni.id 
                           join esercizi 
                           on esercizi_per_sessioni.idesercizio = esercizi.id
                           join gruppimuscolari
                           on esercizi.id_gruppomuscolare = gruppimuscolari.id
                           where idscheda = '
    $id_scheda'
                           order by sessioni.id asc"
    );
                           
                           
    while(
    $array=mysql_fetch_array($result)){


    echo
    "<tr>";

    switch (
    $array['sessione'])   {
        
    case 
    'Prima sessione':    
    echo
    "<td style=\"width:13%\" class=\"textDisplay1\"><p style=\"color:#F00000\"><br> ".$array['sessione']."</p></td>";    
    break;    

    case 
    'Seconda sessione':    
    echo
    "<td style=\"width:13%\" class=\"textDisplay1\"><p style=\"color:#00FF00\"><br> ".$array['sessione']."</p></td>";    
    break;    

    case 
    'Terza sessione':    
    echo
    "<td style=\"width:13%\" class=\"textDisplay1\"><p style=\"color:#00F\"><br> ".$array['sessione']."</p></td>";    
    break;    

    case 
    'Quarta sessione':    
    echo
    "<td style=\"width:13%\" class=\"textDisplay1\"><p style=\"color:#FF0\"><br> ".$array['sessione']."</p></td>";    
    break;    

    case 
    'Quinta sessione':    
    echo
    "<td style=\"width:13%\" class=\"textDisplay1\"><p style=\"color:#0FF\"><br> ".$array['sessione']."</p></td>";    
    break;    

    case 
    'Sesta sessione':    
    echo
    "<td style=\"width:13%\" class=\"textDisplay1\"><p style=\"color:#F0F\"><br> ".$array['sessione']."</p></td>";    
    break;    



    }


    echo
    "<td style=\"width:28%\" class=\"textDisplay1\">".$array['nomees']."</td>";
    echo
    "<td style=\"width:13%\" class=\"textDisplay1\">".$array['ripetizioni']."</td>";
    echo
    "<td style=\"width:12%\" class=\"textDisplay1\">".$array['recupero']."</td>";
    if(
    strlen($array['peso'])==0) echo "<td style=\"width:10%\" class=\"textDisplay1\">".$array['peso']."</td>";
    if(
    strlen($array['peso'])>0) echo "<td style=\"width:10%\" class=\"textDisplay1\">".$array['peso']." kg</td>";
    echo
    "<td style=\"width:10%\" class=\"textDisplay1\">".$array['note']."</td>";

    echo 
    "<td style=\"width:10%\" class=\"textDisplay1\"><a href=\"modifica_esercizio.php?id_scheda=$array[idscheda]&idsess=$array[idsess]&gruppo=$array[nomegr]&eser=$array[ides]&rip=$array[ripetizioni]&rec=$array[recupero]&peso=$array[peso]&note=$array[note]&ideser_per_sess=$array[id_eserc_sess]\"><center><img src=\"images/modifica.png\" border=0></center></a></td>";
    echo
    "<td style=\"width:10%\" class=\"textDisplay1\">
    <a href=\"inserimento_esercizi.php?op=del&id_scheda=
    $array[idscheda]&idsess=$array[idsess]&id=$array[ides]\" onclick=\"return(confirm('Sei sicuro di voler cancellare??'))\"><center><img src=\"images/rimuovi.png\" border=0></center></a></td>";
    echo
    "</tr>";

    }

    echo
    "</table>";



    ?>



    <br>

    </div>



    </div> <!-- chiusura contenitore -->







    <br><br>

    <!-- onClick="insDati(document.inserisci_esercizio.id_scheda.value, document.inserisci_esercizio.sessione.value )" -->



    </div>






    </div>  <!-- chiusura content -->
    </body>
    </html>

    <? } else{
    echo
    "<script language=\"javascript\">";
    echo
    "document.location.href='errore.php'";
    echo
    "</script>";
    ?>
    <?php
    if (isset($_GET["op"]) && $_GET["op"]=="del"){

    $obj->connessione();
    $idscheda=$_GET['id_scheda'];
    $idsess=$_GET['idsess'];
    $id=$_GET['id'];
    $dati=mysql_query("delete from esercizi_per_sessioni where idscheda='$idscheda' and idsessione= '$idsess' and idesercizio= '$id'");

    if(
    $dati) echo "cancellato correttamente";
    else echo 
    "non  cancellato per motivi tecnici: ".mysql_error();

    echo
    "<script type=\"text/javascript\">";

    echo
    "document.location.href='inserimento_esercizi.php?id_scheda=$idscheda'";
    echo
    "</script>";
    }



    ?>
    Ultima modifica di dechiara.p88; 20-11-2014 a 13:40
    I bravi programmatori sanno cosa scrivere, i migliori sanno cosa riscrivere (e riusare)

  2. #2
    Perdonami, ma da quello che hai scritto e dal codice postato non si capisce assolutamente nulla di ciò che devi fare...almeno io non lo capisco!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    Quote Originariamente inviata da satifal Visualizza il messaggio
    Perdonami, ma da quello che hai scritto e dal codice postato non si capisce assolutamente nulla di ciò che devi fare...almeno io non lo capisco!
    in pratica quella che vedi spezzata in due è tutta una pagina php che crea una tabella e restituisce dei valori nella tabella... io per semplificarvi la lettura ho inserito inserito il ciclo if che non mi funziona fuori dal codice php ma quello che leggi è tutta una pagina php
    I bravi programmatori sanno cosa scrivere, i migliori sanno cosa riscrivere (e riusare)

  4. #4
    visto che non ho ricevuto nessun aiuto e che ho scritto male la domanda provo a riscriverla sperando in una mano da qualcuno...sto scrivendo un codice php di un form che collegandosi al database in base alla risposta che ha ricevuto dal database mi stampa una stringa o un altra il codice mi funziona ma ho problemi con l'if. Nel form il livello puo essere di tre tipi base intermedio e avanzato. Quindi penso che il codice if funzioni cosi se base è uguale a $row livello allora stampa ciao Paolo altrimenti ciao Gino. Dove sbaglio? C'è qualcuno che potrebbe darmi una mano per capire l'errore?? grazie in anticipo
    Codice PHP:
    $obj->connessione();

    $query "select * from schede join clienti
              on schede.idcliente = clienti.id 
              where id1 = '
    $id_scheda'  " ;

    $result mysql_query($query);

     while (
    $row mysql_fetch_array($result)) {
         
    $cognome=strtoupper($row['cognome']);
         
    $nome=strtoupper($row['nome']);
         
    $id_client=$row['id'];
         echo
    "<div align=\"center\"><h1>".$cognome." ".$nome."</h1>";
         echo
    "<strong>Scheda numero: ".$id_scheda."<br>";
         echo
    "<strong>Livello: ".$row['livello']."<br>";
         echo
    "Obiettivo: ".$row['obiettivo']."</strong></div><br><br><br>";
     }



    if( 
    preg_match "/^base/" $row['livello'] )) 

    {

    echo 
    "ciao paolo";}
    else
    {
    echo 
    "ciao Gino";
    }

    ?> 
    I bravi programmatori sanno cosa scrivere, i migliori sanno cosa riscrivere (e riusare)

  5. #5
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Se fai un print $row['livello'] prima del preg_match cosa ottieni ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  6. #6
    Quote Originariamente inviata da badaze Visualizza il messaggio
    Se fai un print $row['livello'] prima del preg_match cosa ottieni ?
    nel ciclo while mi restituisce il valore inserito ne form cioè base, intermedio o avanzato, fuori dal while e prima del preg_match non fa nulla
    I bravi programmatori sanno cosa scrivere, i migliori sanno cosa riscrivere (e riusare)

  7. #7
    Provo a dire la mia stupidaggine:
    devi usare per forza preg_match?
    Non potresti fare semplicemente:

    Codice PHP:
    if(row["livello"] == "base"
    {
        
    Ciao Gino...
    }

    else
    {
       
    Ciao Paolo...



  8. #8
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quote Originariamente inviata da dechiara.p88 Visualizza il messaggio
    nel ciclo while mi restituisce il valore inserito ne form cioè base, intermedio o avanzato, fuori dal while e prima del preg_match non fa nulla
    Allora perché usi $row['livello'] fuori dal ciclo while ?

    Codice PHP:
    $livello '';
    while (
    $row mysql_fetch_array($result)) {
        
    $livello $row['livello'];     
        
    $cognome=strtoupper($row['cognome']);
         
    $nome=strtoupper($row['nome']);
         
    $id_client=$row['id'];
         echo
    "<div align=\"center\"><h1>".$cognome." ".$nome."</h1>";
         echo
    "<strong>Scheda numero: ".$id_scheda."<br>";
         echo
    "<strong>Livello: ".$row['livello']."<br>";
         echo
    "Obiettivo: ".$row['obiettivo']."</strong></div><br><br><br>";
     }

    if( 
    preg_match "/^base/" $livello )) {
    echo 
    "ciao paolo";
    } else {
    echo 
    "ciao Gino";

    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  9. #9
    Scusa Badaze ma la variabile $livello che viene valorizzata nel ciclo while poi dovrebbe essere disponibile anche fuori dalle stesso, giusto?

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.