Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di monzon
    Registrato dal
    Nov 2009
    Messaggi
    27

    cancellazione dati mysql

    ciao a tutti...ho un problemino...sto costruendo un sito per una compagnia alberghiera relativo al classico passaggio consegne tra reparti...sembra tutto ok tranne che per lo script di cancellazione del dato presente in mysql...in allegato trovate il file incriminato che da sempre errore...ve lo posto ...non riescoa trovare dove sta l'errore...le ho provate tutte...vi chiedo gentilmente di darmi una mano...grazie ancora

    <?
    @include 'config.php';
    if (@isset($_GET['id']) && @is_numeric($_GET['id']))
    {
    $del_id = $_GET['id'];
    $query = @mysql_query("SELECT titolo, str_data FROM appuntamenti WHERE id ='$del_id'");
    $fetch = @mysql_fetch_array($query);
    $titolo = $fetch['titolo'];
    $data = date("d-m-Y", $fetch['str_data']);
    ?>
    <form method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
    <h1>Attenzione!</h1>
    Si sta per eliminare la consegna
    <? echo stripslashes($titolo); ?>

    del <? echo stripslashes($data); ?>.

    Confermare per eseguire l'operazione.



    <input name="del_id" type="hidden" value="<? echo $del_id; ?>">
    <input name="submit" type="submit" value="Cancella">
    </form>
    <?
    if(isset($_POST['del_id']) && is_numeric($_POST['del_id']))
    {
    $del_id2 = $_POST['del_id'];
    if (@mysql_query("DELETE FROM appuntamenti WHERE id = '$del_id2'"))
    {
    echo "Cancellazione della consegna avvenuta con successo

    <a href=\"index.php\">Torna al passaggio consegne</a>";
    exit();
    }
    @mysql_close();
    }
    ?>

  2. #2
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,655
    Ciao, leva @ e metti mysql_query("DELETE FROM appuntamenti WHERE id = '$del_id2'")or die(mysql_error()) e vedi intanto che errore ti da.

  3. #3
    Utente di HTML.it L'avatar di monzon
    Registrato dal
    Nov 2009
    Messaggi
    27
    niente da fare....sempre la stessa cosa...secondo me l'errore sta nella parte iniziale...però non riesco a capire cosa possa essere

  4. #4
    Originariamente inviato da monzon
    niente da fare....sempre la stessa cosa...secondo me l'errore sta nella parte iniziale...però non riesco a capire cosa possa essere
    metti il tag php esteso e togli l'operatore del controllo errore @ almeno durante il debug. Ma toglili proprio tutti.

    Aggiungi la stampa degli errori sulle query.

    E mentre ci sei non lasciare indovinare ma spiega di quale errore si tratta.

    Da notare poi che non e' strutturato bene il tuo script.Inoltre se uno si divertisse a scrivere id diversi nell'URL potrebbe cancellarti tutta la tabella.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Utente di HTML.it L'avatar di monzon
    Registrato dal
    Nov 2009
    Messaggi
    27
    beh a questo punto la domanda nasce spontanea...tu come lo scriveresti?
    scusami ma sono un novello dello script in php...
    grazie mille a tutti intanto

  6. #6
    Originariamente inviato da monzon
    beh a questo punto la domanda nasce spontanea...tu come lo scriveresti?
    scusami ma sono un novello dello script in php...
    grazie mille a tutti intanto
    bisogna valutare il progetto per capire perche' passi l'id da cancellare tramite un url. Siccome si puo' supporre che viene rilanciato un id da cancellare gia' precedentemente proposto in un link dovresti almeno assicurarti che l'id da cancellare faccia parte della lista ammessa alla cancellazione.

    Per la struttura devi controllare se esiste il $_POST valorizzato "prima" di lanciare il form.

    <?php

    esiste il POST?

    esegui il controllo di congruenza id e cancella

    POST non e' valorizzato? controlla se esiste un id da cancellare
    e se esiste chiedi conferma con il form.

    Questo a grandissime linee.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.