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

Discussione: Checkbox

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    92

    Checkbox

    Ragazzi ho questo script:
    Codice PHP:
    <?php

    echo '<div class="titolo">Lista '.$_GET['lista'].'</div>';
    include(
    'connessione.php');

    if(isset(
    $_POST))
    {
       
    $submit $_POST['submit'];
       
    $cod $_POST['cod'];
       
    $oggetto $_POST['oggetto'];
       
    $prezzo $_POST['prezzo'];
       
    $venduto $_POST['venduto'];

       if(
    $submit)
       {    
           
    $namecheck mysql_query('SELECT * FROM '.$_GET['lista'].'');
           
    mysql_query("INSERT INTO ".$_GET['lista']." VALUES('$cod', '$oggetto', '$prezzo', '$venduto')") or die(mysql_error());
           
    $count mysql_num_rows($namecheck);
         
         if(
    $count != 0)
         {
               die (
    "Oggetto aggiunto alla lista.&nbsp[url='lista_nozze.php?lista=".$_GET[']Controlla.[/url]");
         }
        
       }
     
       $query = mysql_query('
    SELECT FROM '.$_GET['lista'].'') or die(mysql_error());

       echo '
    <ul>[*]CODICE
        
    [*]OGGETTO
        
    [*]PREZZO
        
    [*]VENDUTO
            
    [/list]';
          
       while ($result = mysql_fetch_array($query))
       { 
          $cod = $result['
    COD'];
          $oggetto = $result['
    OGGETTO'];
          $prezzo = $result['
    PREZZO'];
          $venduto = $result['
    VENDUTO'];
            
          echo '
    <table>
                 <
    tr>
                  <
    td>'.$cod.'</td>

                  <
    td>'.$oggetto.'</td>

                    <
    td>'.$prezzo.'</td>
                  <
    td>'.$venduto.'</td>
                  <
    td><input type="checkbox" name="delete[]" value="1"></td>
                 </
    tr>
                </
    table>';
       }
    }
    else
    {
    die();
    }

    echo '
    <form action="lista_nozze.php?lista='.$_GET['lista'].'" method="post">

           



           <
    div>Codice:<span>&nbsp&nbsp<input type="text" name="cod"></span>
           <
    span>Oggetto:&nbsp&nbsp<input type="text" name="oggetto"></span>
           <
    span>Prezzo:&nbsp&nbsp<input type="text" name="prezzo"></span>
           <
    span>Venduto:&nbsp&nbsp<input type="text" name="venduto"></span>
           <
    span><input type="hidden" name="submit" value="1">
                 <
    input type="submit" value="Aggiungi"></span></div>
                 
          </
    form>


          <
    form action="elimina.php" method="post"
           
    <input type="submit" value="Elimina Oggetto">
          </
    form>';


    ?>
    Vorrei che selezionando la scheckbox venisse eliminata quella riga, cioè contemporaneamente, codice, oggetto, prezzo e venduto.
    Mi dite come devo fare? Che devo fare nella pagina elimina.php??

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Non puoi farlo con php, è un linguaggio lato server.
    Tutte le cose da fare su una pagina che stai già visualizzando, a meno di fare un submit per far applicare le modifiche (e quindi ricaricare la pagina), vanno fatte con un linguaggio lato client.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    92
    Ma come non è possibile?? Voglio eliminare un oggetto dal database e non posso farlo in php??
    E come lo faccio in html?

  4. #4
    Certo che lo puoi (devi) fare in php!

    Devi aggiungere un ID o una chiave primaria alla tabella e poi metti da qualche parte nella checkbox l'ID della riga da eliminare dal database (oppure in un campo nascosto, come preferisci tu...) altrimenti non sai quale riga eliminare.

    metti una cosa del genere:

    Codice PHP:
    echo '<table>
                 <tr>
                  <td>'
    .$cod.'</td>

                  <td>'
    .$oggetto.'</td>

                    <td>'
    .$prezzo.'</td>
                  <td>'
    .$venduto.'</td>
                  <td><input type="checkbox" name="delete[]" value="1"><input type="hidden" name="ident" value="'
    .$id_riga.'"></td>
                 </tr>
                </table>'

    Una volta fatto questo ti è facile recuperare la variabile tramite POST e cancellare quella riga!
    Can You See Curtains? Then Isn't Windows!

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    92
    E come faccio ad aggiungere la chiave $id_riga alla tabella??

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    92
    Ok ho aggiunto una chiave primaria ID con auto_incremento.
    Ora vorrei sapere cosa fare nella pagina elimina.php se non è troppo disturbo.

  7. #7
    Basandoci sul codice di prima:

    Codice PHP:
    $id-da-eliminare=$_POST['ident']; <-- Occhio che qui c'è da mettere qualche protezione
    mysql_query("delete from TABELLA where $ID = $id-da-eliminare LIMIT 1;") 
    Il tutto un po' a braccio e da sviluppare!
    Can You See Curtains? Then Isn't Windows!

  8. #8
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    lol... non avevo capito cosa volessi fare

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    92
    Posso sapere cosa fa $id-da-eliminare=$_POST['ident'];
    Perchè npn riesco a farlo funzionare...

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    92
    Allora ragazzi ora ho fatto così, in lista_nozze.php
    Codice PHP:
       echo '<form action="elimina.php" method="post">';  
       while (
    $result mysql_fetch_array($query))
       { 
          
    $id $result['ID'];
          
    $cod $result['COD'];
          
    $oggetto $result['OGGETTO'];
          
    $prezzo $result['PREZZO'];
          
    $venduto $result['VENDUTO'];
          
            
          echo 
    '<table>
                 <tr>
                  <td>'
    .$cod.'</td>

                  <td>'
    .$oggetto.'</td>

              <td>'
    .$prezzo.'</td>
                  <td>'
    .$venduto.'</td>
              <td><input type="checkbox" name="id[]" value="'
    .$id.'"></td>
              <td><input type="submit" value="Elimina Oggetto"></td>
                 </tr>
                </table>'
    ;
       } 
       echo 
    '</form>'
    e in elimina.php ho fatto così:
    Codice PHP:
    <?php
    include('connessione.php');

    if(
    is_array($_POST['id']))
    {
    foreach(
    $_POST['id'] as $idz)
    {
    mysql_query("DELETE FROM ".$_GET['lista']." WHERE ID = '$idz'") or die(mysql_error());
    }
    }
    echo 
    'Oggetto eliminato';
    ?>
    L'id lo riconosce solo che mi da quest'errore:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE ID = '1'' at line 1

    Soluzioni??

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.