ciao, ho un codice per la gestione di alcuni documenti (inserisci, cancella, modifica). Nella pagina di cancellazione vorrei far si che se non viene selezionato alcun documento tornasse un avviso che lo dice, mentre se vengono selezionati alcuni documenti ci fosse un ricapitolamente di ciò che è stato cancellato.
per il primo io avevo fatto così, ma non funzia correttamente, ho provato anche con else, ma non ottengo ciò che voglio. Qual è dunque la maniera migliore per avere questo messaggio?
porzione di codice interessata:
Codice PHP:
if($_POST)
{
$ids = isset($_POST['id']) ? $_POST['id'] : array();
elimina_record($ids);
}
if(!$_POST)
{
echo '<p class="avvisi">Nessuna voce selezionata!</p>';
}
per quanto riguarda il secondo messaggio di riepilogo invece questo è il codice:
Codice PHP:
function elimina_record($ids)
{
if(count($ids) < 1)
{
$messaggio = urlencode("Nessuna voce selezionata!");
header('location: '.$_SERVER['PHP_SELF'].'?msg='.$messaggio);
exit;
}
// per precauzione converto gli ID in interi
$ids = array_map('intval',$ids);
// creo una lista di ID per la query
$ids = implode(',',$ids);
// preparo la query
$sql = "DELETE FROM circolari WHERE id IN ($ids)";
// invio la query
$result = mysql_query($sql);
// controllo l'esito
if (!$result) {
die("Errore nella query $sql: " . mysql_error());
}
if ($result)
{
echo 'Sono stati cancellati con successo i seguenti temi:
$ids';
}
// conto il numero di record cancellati
$num_record = mysql_affected_rows();
// chiudo la connessione a MySQL
mysql_close($link);
$messaggio = urlencode("Numero voci cancellate: $num_record");
header('location: '.$_SERVER['PHP_SELF'].'?msg='.$messaggio);
}
io ho inserito un if ($result) e ho provato anche con else, ma anche qui non ottengo ciò che vorrei...
mi chiedo inoltre se la variabile $ids che ho inserito mi restituirà i dati in colonna o meno, mi sa di no, quindi come fare?
grazie