[PHP] selezionare righe di una tabella con le checkbox e cancellarle

Lalli

Nuovo Utente
6 Ott 2016
15
0
1
26
Ciao a tutti sono sempre io :p:D

stavo pensando per il mio programmino di creare una tabella con delle righe selezionabili, e una volta selezionate cancellarle grazie a delle checkbox (fin qui nessun problema).

solo che quando vado a eseguire il programma mi da questo 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 'ID'] ?> '' at line 1" e non capisco come mai..:(:(

vi posto il codice :

PHP:
<html>
<title>Elimina</title>
<head>
<title>Eliminazione</title>
<style>
table, th, td
{
    border: 1px solid black;
   
}
</style>
</head>
<body>
<h1>Eliminazione</h1>

<form action="Eliminazione.php" method="post" >


<input type="submit" name="id" value="Elimina" onClick="return confirm('Sicuro di voler cancellare questo record ?');" />

<a href='Inserimento.php'><input type="submit" name="Inserimento" value="inserisci un record nel database" /></a>
<a href='Modifica.php'><input type="submit" name="Modifica" value="Modifica un record nel database" /></a>
<a href='Ricerca.php'><input type="submit" name="Ricerca" value="Ricerca un record nel database" /></a>



<table>

<?php
$user="xxxx";
$pass="****";
$dbh = mysql_connect("xxxx","xxxx",$pass);
mysql_select_db('xxxx') or die(mysql_error());

?>
<table style="width:100%">
<tr>
    <th>#</th>
    <th>ID</th>
    <th>Filiale</th>
    <th>Ufficio</th>
    <th>Utente</th>
    <th>Tipo</th>
    <th>Marca</th>
    <th>Modello</th>
    <th>Matricola</th>
    <th>Note</th>
    <th>DataDDT</th>
    <th>DDT</th>
    <th>Fornitore</th>
    <th>ACQNOL</th>
    <th>Scadenza</th>
</tr>
<?php

        $user="xxx";
        $pass="****";
        $dbh = mysql_connect("xxxx","xxxx",$pass);
        mysql_select_db('xxxx') or die(mysql_error());
        $stmt = ("Select * from gestione");
        $ris= mysql_query($stmt) or die($stmt."<br/><br/>".mysql_error());
        $count=mysql_num_rows($ris);
        while($rigo=mysql_fetch_array($ris))
        {
           
?>
        <tr>
         <td><input name="checkbox[]" type="checkbox" id="checkbox[]" value="<?phpecho $rigo['ID']?>"/></td>
<?php
echo"  <td> " . $rigo['ID'] . " </td> <td> " . $rigo['Filiale'] . " </td> <td> " . $rigo['Ufficio'] . " </td> <td> " . $rigo['Utente'] . " </td> <td> " . $rigo['Tipo'] . " </td> <td> " . $rigo['Marca'] . " </td> <td> " . $rigo['Modello'] . " </td> <td> " . $rigo['Matricola'] . " </td> <td> " . $rigo['Note'] . " </td> <td> " . $rigo['DataDDT'] . " </td> <td> " . $rigo['DDT'] . " </td><td> " . $rigo['Fornitore'] . " </td> <td> " . $rigo['ACQNOL'] . " </td> <td> " . $rigo['Scadenza'] . " </tr>";
}  
    try
    {
       
        if(isset($_POST['id']))
        {
           
               //echo "<meta http-equiv='Refresh' content='3; URL=Eliminazione.php'>";
               if (count($_POST['checkbox']) > 0)
               {
                   foreach ($_POST['checkbox'] as $del_id)
                   {
                       $sql = "DELETE FROM gestione WHERE ID =' " . $del_id . " ' ";
                       $ris = mysql_query($sql) or die(mysql_error());
                      
                   }
             }      
        }
   
    }
catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
    die();
}  
?>  

</table>
</form>
</body>
</html>
Grazie mille anticipatamente per l'interessamento e per eventuali risposte :)
 

genemaks

Nuovo Utente
8 Nov 2016
2
0
1
56
Ciao Lalli.

Il codice incriminato dovrebbe essere questo.

$sql = "DELETE FROM gestione WHERE ID =' " . $del_id . " ' ";

Quando fai il debug per essere sicuro della sintassi della query metti un echo $sql; e vedi effettivamente com'è formata la query.

L'errore potrebbe essere:
1) ID è un campo numerico e tu ci metti gli apici (quindi lo consideri un campo stringa)
2) Hai messo degli spazi tra gli apici e le virgolette quindi il risultato è ad esempio (il meno per delimitare il risultato) - 1 - e non -1-
3) per qualche ragione $del_id non è valorizzata
 

Lalli

Nuovo Utente
6 Ott 2016
15
0
1
26
Ok quando provo ti faccio sapere, grazie mille !


Aggiornamento: risolto così
PHP:
if(isset($_POST['el_id']))
        {
            
               echo "<meta http-equiv='Refresh' content='0'; URL=Eliminazione.php'>";
               if (count($_POST['checkbox']) > 0)
               {
                   foreach ($_POST['checkbox'] as $del_id)
                   {
                       $sql = "DELETE FROM gestione WHERE id ='" . $del_id . " '";
                       $ris = mysql_query($sql) or die(mysql_error());
                      
                   }
             }       
        }
 
Ultima modifica:
Discussioni simili
Autore Titolo Forum Risposte Data
M [PHP] Selezionare immagini directory non presenti in db PHP 11
S [PHP] selezionare colonna tabella utilizzando un array PHP 1
S [PHP] Selezionare i campi non in comune con le altre colonne della tabella PHP 4
L [PHP] CHECKBOX DA SELEZIONARE IN UNA TABELLA PHP 4
S [PHP] selezionare colonne in comune con un altra tabella PHP 5
G [PHP] Selezionare OGGI anno precedente per query sql PHP 2
A [RISOLTO] PHP Selezionare tutti i file con stessa estensione PHP 2
S [PHP] Selezionare dati in intervallo di tempo PHP 21
gandalf1959 Selezionare un intervallo tra due date, php e mysql PHP 2
M [PHP] selezionare dati da db e fare confronti PHP 0
S [PHP] Selezionare ultimo campo ed escludere doppioni PHP 16
S [PHP] Selezionare tutte le colonne meno due PHP 6
L [php e mysql] selezionare sia i selezionati e i non selezionati PHP 1
M Tabella PHP con sorgente dati csv: selezionare le riche e compilare Form eMail PHP 1
C Wp-admin a file php WordPress 4
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0
M Passaggio variabili array php su un tasto jq PHP 3
E Php aggiornamento tabella PHP 9
G phpmailer e php 8.1 con estensione mysqli PHP 6
M Invio dati database via email php PHP 0
K [php] Problema con inner join PHP 4
K [php]form invio dati PHP 0
P Codifica caratteri speciali mysql php PHP 0
K [PHP] Problema con variabili concatenate. PHP 1
E Stampante termica escpos-php PHP 6
JeiMax Modifica codice php personalizzato PHP 2
G Come modificare un pdf in php PHP 1
U Link a doppio file PHP PHP 0
E PHP & jQuery PHP 8
N Passare array da php a javascript PHP 5
F Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili PHP 20
L tipo boolean non funzionante su mariadb (mysql). E codice php 7.4. PHP 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
M PHP/MySQL - Estrarre valori min e max di ogni gruppo PHP 5
F Php e fatturazione elettronica PHP 0
P lanciare script asp (o php) da jquery Javascript 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1
P Data scraping in PHP non funziona PHP 4
C Calcoli matematici in php PHP 5
F Scrivere dei dati in word con php PHP 0
D PHP leggere cartella di Windows PHP 1
I dominio aruba versione php server linux Domini 3
G Colorare menu select attraverso ricerca php PHP 0
L PHP motore di ricerca nel sito PHP 1
S PHP e Mysqli PHP 0
Y Stampare da php su un foglio A6 attraverso una stampante esterna PHP 1
M Visulizzare immagine con php PHP 8
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
G leggere file txt e stampare con php il contenuto a video PHP 7

Discussioni simili