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

Discussione: richiamare funzione

  1. #1

    richiamare funzione

    salve,

    ho un problema. Invio via Get una $id_casa per poter inserire,modificare,eliminare i prezzi della stessa. quando eseguo la funzione elimina non funziona o meglio elimina ma poi non mi riporta sulla funziona mostra lista

    Codice PHP:
    if(isset($_GET['id_casa'])){

              if(isset(
    $_POST['inserisci_prezzi'])){inserisci_prezzi();}

              else{
    mostra_lista();} 

    elseif(isset(
    $_GET['id_prezzi']['id_casa'])){elimina_prezzi();}
    function 
    mostra_lista(){
        if(isset(
    $_GET['msg']))
        echo 
    '[b]'.htmlentities($_GET['msg']).'[/b]

    '
    ;
        
        
    $id_casa intval ($_GET['id_casa']);

        
    // preparo la query
        
    $query_lista "SELECT * FROM prezzi WHERE id_casa='$id_casa' ORDER BY data_inizio ASC";
        
    $result_lista mysql_query ($query_lista);
        
        echo
    '
        <table border=\"1\">
         <tr>
          <th>ID</th>
          <th>DAL</th>
          <th>AL</th>
          <th>PREZZO</th>
          <th></th>
          <th></th>
         <tr>'
    ;
        
        while (
    $row mysql_fetch_assoc ($result_lista)){
            
    $id_prezzi htmlentities ($row['id_prezzi']);
            
    $id_casa htmlentities ($row['id_casa']);
            
    $data_inizio htmlentities ($row['data_inizio']);
            
    $data_fine htmlentities ($row['data_fine']);
            
    $prezzo htmlentities ($row['prezzo']);
            
            
    $link_elimina $_SERVER['PHP_SELF'].'?id_prezzi='.$row['id_prezzi'];
            
            echo
    "<tr>
                  <td>
    $id_prezzi</td>
                  <td>
    $data_inizio</td>
                  <td>
    $data_fine</td>
                  <td>
    $prezzo</td>
                  <td><a href><h4>Modifica</h4></a></td>
                  <td><a href=\"
    $link_elimina\" onclick=\"return(confirm('stai eliminando dal $data_inizio al $data_fine € $prezzo'))\"><h4>Elimina</h4></a></td>
                 </tr>"
    ;
        }
        
        echo
    "<tr>
        <form name=\"inserisci_prezzi\" method=\"post\" action=\"\">
              <td></td>
              <td><input type=\"date\" name=\"data_inizio\" id=\"sel1\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel1','%Y-%m-%d');\"></td>
              <td><input type=\"date\" name=\"data_fine\" id=\"sel3\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel3','%Y-%m-%d');\"></td>
              <td><input id=\"input\" name=\"prezzo\" type=\"number\" size=\"11\"></td>
              <td><input id=\"input\" name=\"id_casa\" type=\"number\" size=\"4\" value=\"
    $id_casa\"></td>
              <td><input type=\"submit\" name=\"inserisci_prezzi\" value=\"Inserisci\"></td>
             </tr>
             </table>"
    ;
             
        
    mysql_free_result ($result_lista);
        
    mysql_close();
    }

    function 
    mostra_lista_2($id_casa){
        
    $id_casa addslashes ($_POST['id_casa']);
        
        
    $query_lista "SELECT * FROM prezzi WHERE id_casa='$id_casa' ORDER BY data_inizio ASC";
        
    $result_lista mysql_query ($query_lista);
        
        echo
    '
        <table border=\"1\">
         <tr>
          <th>ID</th>
          <th>DAL</th>
          <th>AL</th>
          <th>PREZZO</th>
          <th></th>
          <th></th>
         <tr>'
    ;
        
        while (
    $row mysql_fetch_assoc ($result_lista)){
            
    $id_prezzi htmlentities ($row['id_prezzi']);
            
    $id_casa htmlentities ($row['id_casa']);
            
    $data_inizio htmlentities ($row['data_inizio']);
            
    $data_fine htmlentities ($row['data_fine']);
            
    $prezzo htmlentities ($row['prezzo']);
            
            
    $link_elimina $_SERVER['PHP_SELF'].'?id_prezzi='.$row['id_prezzi'];
            
            echo
    "<tr>
                  <td>
    $id_prezzi</td>
                  <td>
    $data_inizio</td>
                  <td>
    $data_fine</td>
                  <td>
    $prezzo</td>
                  <td><a href><h4>Modifica</h4></a></td>
                  <td><a href=\"
    $link_elimina\" onclick=\"return(confirm('stai eliminando dal $data_inizio al $data_fine € $prezzo'))\"><h4>Elimina</h4></a></td>
                 </tr>"
    ;
        }
        
        echo
    "<tr>
        <form name=\"inserisci_prezzi\" method=\"post\" action=\"\">
              <td></td>
              <td><input type=\"date\" name=\"data_inizio\" id=\"sel1\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel1','%Y-%m-%d');\"></td>
              <td><input type=\"date\" name=\"data_fine\" id=\"sel3\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel3','%Y-%m-%d');\"></td>
              <td><input id=\"input\" name=\"prezzo\" type=\"number\" size=\"11\"></td>
              <td><input id=\"input\" name=\"id_casa\" type=\"number\" size=\"4\" value=\"
    $id_casa\"></td>
              <td><input type=\"submit\" name=\"inserisci_prezzi\" value=\"Inserisci\"></td>
             </tr>
             </table>"
    ;
             
        
    mysql_free_result ($result_lista);
        
    mysql_close();
    }

    function 
    elimina_prezzi(){
        
        
    $id_prezzi intval($_GET['id_prezzi']);
        
        
    $query_casa="SELECT id_casa FROM prezzi WHERE id_prezzi='$id_prezzi'";
        
    $result_casa=mysql_query($query_casa);    
        
        
    $id_casa stripslashes($result_casa['id_casa']);
            
        
    $query_elimina="DELETE FROM prezzi WHERE id_prezzi='$id_prezzi'";
        
    $result_elimina=mysql_query($query_elimina);
        
        
        if(
    $result_casa==1){         
             
    mostra_lista_2($id_casa);
        }
        


  2. #2
    Da elimina_prezzi() chiami:

    Codice PHP:
    if($result_casa==1){         
             
    mostra_lista_2($id_casa);
        } 
    ma in mostra_lista_2() sovrascrivi l'id passato col valore letto in POST:

    Codice PHP:
    function mostra_lista_2($id_casa){
        
    $id_casa addslashes ($_POST['id_casa']); 
    Come codice non mi sembra il massimo della correttezza nè tantomeno della chiarezza.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    si in realta la funzione
    Codice PHP:
    function mostra_lista_2($id_casa){ 
    la uso anche per mostrare dopo l'inserimento del prezzo per questo c'è $_POST

  4. #4
    Originariamente inviato da antomanna
    si in realta la funzione
    Codice PHP:
    function mostra_lista_2($id_casa){ 
    la uso anche per mostrare dopo l'inserimento del prezzo per questo c'è $_POST
    E a cosa serve il parametro $id_casa in input se viene sempre sovrascritto?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    hai raginio non serve a niente.
    Il problema sta che quando dalla funzione mostra_lista clicco elimina un id_prezzo invio via GET l'id_prezzo ma non l'id_casa quindi nella funzione elimina_prezzi mi ritrovo l'id_casa e poi lo dovrei mandare automaticamente via POST dopo aver eliminato l'id.

    non so se sono chiaro nella spiegazione.

  6. #6
    Originariamente inviato da antomanna
    non so se sono chiaro nella spiegazione.
    No.

    Ma ti consiglio di riscrivere tutto da zero in maniera decente piuttosto che "accrocchiare" il codice esistente. Magari iniziando con carta e penna.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    se si riesce a capire questo è tutto il codice:
    Codice PHP:
    if(isset($_GET['id_casa'])){
        
        if(isset(
    $_POST['inserisci_prezzi'])){
            
    inserisci_prezzi();
        }
        
        
        else{
            
    mostra_lista();
        }
    }
    elseif(isset(
    $_GET['id_prezzi']['id_casa'])){
        
    elimina_prezzi();
    }

    function 
    inserisci_prezzi(){
        
    $id_casa addslashes ($_POST['id_casa']);
        
    $data_inizio addslashes ($_POST['data_inizio']);
        
    $data_fine addslashes ($_POST['data_fine']);
        
    $prezzo addslashes ($_POST['prezzo']);
        
        
    $query_inserimento "INSERT INTO prezzi (id_casa,data_inizio,data_fine,prezzo) VALUES ('$id_casa','$data_inizio','$data_fine','$prezzo')";
        
    $result_inserimento mysql_query ($query_inserimento) or die (mysql_error());
        
        
        if(
    $result_inserimento==1){
            
    mostra_lista_2();
        }
    }

    function 
    mostra_lista_2(){
        
    $id_casa addslashes ($_POST['id_casa']);
        
        
    $query_lista "SELECT * FROM prezzi WHERE id_casa='$id_casa' ORDER BY data_inizio ASC";
        
    $result_lista mysql_query ($query_lista);
        
        echo
    '
        <table border=\"1\">
         <tr>
          <th>ID</th>
          <th>DAL</th>
          <th>AL</th>
          <th>PREZZO</th>
          <th></th>
          <th></th>
         <tr>'
    ;
        
        while (
    $row mysql_fetch_assoc ($result_lista)){
            
    $id_prezzi htmlentities ($row['id_prezzi']);
            
    $id_casa htmlentities ($row['id_casa']);
            
    $data_inizio htmlentities ($row['data_inizio']);
            
    $data_fine htmlentities ($row['data_fine']);
            
    $prezzo htmlentities ($row['prezzo']);
            
            
    $link_elimina $_SERVER['PHP_SELF'].'?id_prezzi='.$row['id_prezzi'];
            
            echo
    "<tr>
                  <td>
    $id_prezzi</td>
                  <td>
    $data_inizio</td>
                  <td>
    $data_fine</td>
                  <td>
    $prezzo</td>
                  <td><a href><h4>Modifica</h4></a></td>
                  <td><a href=\"
    $link_elimina\" onclick=\"return(confirm('stai eliminando dal $data_inizio al $data_fine € $prezzo'))\"><h4>Elimina</h4></a></td>
                 </tr>"
    ;
        }
        
        echo
    "<tr>
        <form name=\"inserisci_prezzi\" method=\"post\" action=\"\">
              <td></td>
              <td><input type=\"date\" name=\"data_inizio\" id=\"sel1\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel1','%Y-%m-%d');\"></td>
              <td><input type=\"date\" name=\"data_fine\" id=\"sel3\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel3','%Y-%m-%d');\"></td>
              <td><input id=\"input\" name=\"prezzo\" type=\"number\" size=\"11\"></td>
              <td><input id=\"input\" name=\"id_casa\" type=\"number\" size=\"4\" value=\"
    $id_casa\"></td>
              <td><input type=\"submit\" name=\"inserisci_prezzi\" value=\"Inserisci\"></td>
             </tr>
             </table>"
    ;
             
        
    mysql_free_result ($result_lista);
        
    mysql_close();
    }

    function 
    mostra_lista(){
        if(isset(
    $_GET['msg']))
        echo 
    '[b]'.htmlentities($_GET['msg']).'[/b]

    '
    ;
        
        
    $id_casa intval ($_GET['id_casa']);

        
    // preparo la query
        
    $query_lista "SELECT * FROM prezzi WHERE id_casa='$id_casa' ORDER BY data_inizio ASC";
        
    $result_lista mysql_query ($query_lista);
        
        echo
    '
        <table border=\"1\">
         <tr>
          <th>ID</th>
          <th>DAL</th>
          <th>AL</th>
          <th>PREZZO</th>
          <th></th>
          <th></th>
         <tr>'
    ;
        
        while (
    $row mysql_fetch_assoc ($result_lista)){
            
    $id_prezzi htmlentities ($row['id_prezzi']);
            
    $id_casa htmlentities ($row['id_casa']);
            
    $data_inizio htmlentities ($row['data_inizio']);
            
    $data_fine htmlentities ($row['data_fine']);
            
    $prezzo htmlentities ($row['prezzo']);
            
            
    $link_elimina $_SERVER['PHP_SELF'].'?id_prezzi='.$row['id_prezzi'];
            
            echo
    "<tr>
                  <td>
    $id_prezzi</td>
                  <td>
    $data_inizio</td>
                  <td>
    $data_fine</td>
                  <td>
    $prezzo</td>
                  <td><a href><h4>Modifica</h4></a></td>
                  <td><a href=\"
    $link_elimina\" onclick=\"return(confirm('stai eliminando dal $data_inizio al $data_fine € $prezzo'))\"><h4>Elimina</h4></a></td>
                 </tr>"
    ;
        }
        
        echo
    "<tr>
        <form name=\"inserisci_prezzi\" method=\"post\" action=\"\">
              <td></td>
              <td><input type=\"date\" name=\"data_inizio\" id=\"sel1\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel1','%Y-%m-%d');\"></td>
              <td><input type=\"date\" name=\"data_fine\" id=\"sel3\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel3','%Y-%m-%d');\"></td>
              <td><input id=\"input\" name=\"prezzo\" type=\"number\" size=\"11\"></td>
              <td><input id=\"input\" name=\"id_casa\" type=\"number\" size=\"4\" value=\"
    $id_casa\"></td>
              <td><input type=\"submit\" name=\"inserisci_prezzi\" value=\"Inserisci\"></td>
             </tr>
             </table>"
    ;
             
        
    mysql_free_result ($result_lista);
        
    mysql_close();
    }

    function 
    elimina_prezzi(){
        
        
    $id_prezzi intval($_GET['id_prezzi']);
        
        
    $query_casa="SELECT id_casa FROM prezzi WHERE id_prezzi='$id_prezzi'";
        
    $result_casa=mysql_query($query_casa);    
        
        
    $id_casa stripslashes($result_casa['id_casa']);
            
        
    $query_elimina="DELETE FROM prezzi WHERE id_prezzi='$id_prezzi'";
        
    $result_elimina=mysql_query($query_elimina);
        
        
        if(
    $result_casa==1){         
             
    mostra_lista_2();
        }
        

    spero sia chiaro. questo e tutto il codice.

    DEVO RIUSCIRE A PASSARE AUTOMATICAMENTE DOPO L'ELIMINAZIONE DELL'ID_PREZZO ALLO STESSO ID_CASA PER POTER VEDERE LA LISTA

  8. #8
    Originariamente inviato da antomanna
    DEVO RIUSCIRE A PASSARE AUTOMATICAMENTE DOPO L'ELIMINAZIONE DELL'ID_PREZZO ALLO STESSO ID_CASA PER POTER VEDERE LA LISTA
    Non è che alzando la voce si capisce meglio ciò che vuoi fare.

    Che differenza ci sarebbe tra mostra_lista() e mostra_lista_2()?
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  9. #9
    scusami ma non era un alzamento di voce.
    La differenza sta che una è POST e l'altra GET.

    devo solo riuscire a inviare automaticamente dalla funzione elimina_prezzi, o via GET o via POST, l'id_casa e non l'id_prezzo

  10. #10
    Invece un'unica funzione mostra_lista() è troppo brutta?

    Codice PHP:
    function mostra_lista($id_casa){
        
    $query_lista "SELECT * FROM prezzi WHERE id_casa='$id_casa' ORDER BY data_inizio ASC";
        
    $result_lista mysql_query ($query_lista);
        
        echo
    '
        <table border=\"1\">
         <tr>
          <th>ID</th>
          <th>DAL</th>
          <th>AL</th>
          <th>PREZZO</th>
          <th></th>
          <th></th>
         <tr>'
    ;
        
        while (
    $row mysql_fetch_assoc ($result_lista)){
            
    $id_prezzi htmlentities ($row['id_prezzi']);
            
    $id_casa htmlentities ($row['id_casa']);
            
    $data_inizio htmlentities ($row['data_inizio']);
            
    $data_fine htmlentities ($row['data_fine']);
            
    $prezzo htmlentities ($row['prezzo']);
            
            
    $link_elimina $_SERVER['PHP_SELF'].'?id_prezzi='.$row['id_prezzi'];
            
            echo
    "<tr>
                  <td>
    $id_prezzi</td>
                  <td>
    $data_inizio</td>
                  <td>
    $data_fine</td>
                  <td>
    $prezzo</td>
                  <td><a href><h4>Modifica</h4></a></td>
                  <td><a href=\"
    $link_elimina\" onclick=\"return(confirm('stai eliminando dal $data_inizio al $data_fine € $prezzo'))\"><h4>Elimina</h4></a></td>
                 </tr>"
    ;
        }
        
        echo
    "<tr>
        <form name=\"inserisci_prezzi\" method=\"post\" action=\"\">
              <td></td>
              <td><input type=\"date\" name=\"data_inizio\" id=\"sel1\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel1','%Y-%m-%d');\"></td>
              <td><input type=\"date\" name=\"data_fine\" id=\"sel3\" size=\"11\"><input type=\"reset\" value=\"...\" onclick=\"return showCalendar('sel3','%Y-%m-%d');\"></td>
              <td><input id=\"input\" name=\"prezzo\" type=\"number\" size=\"11\"></td>
              <td><input id=\"input\" name=\"id_casa\" type=\"number\" size=\"4\" value=\"
    $id_casa\"></td>
              <td><input type=\"submit\" name=\"inserisci_prezzi\" value=\"Inserisci\"></td>
             </tr>
             </table>"
    ;
             
        
    mysql_free_result ($result_lista);
        
    mysql_close();

    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

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.