Visualizzazione risultati 1 fino 2 di 2

Discussione: carattere speciale

  1. #1
    Guest

    Predefinito carattere speciale

    Salve!
    Io ho un database con una serie di tabelle nominate al modo seguente:

    200511_fdsafdsafssdf
    200511_gsregfdgfdsgf
    200510_fdsagfdsgfdgf
    200510_gdregregtrgfd
    200509_sdfagregrege

    vorrei crearmi un codice che mi elimina da solo tutte le tabelle che iniziano in un certo modo (es. quelle che iniziano con 200510_).
    Pensavo che forse si può utilizzare un carattere speciale (es. il ? nei sistemi operativi per sostituire i caratteri)

    quindi come modificare una query come questa?
    $EliminaTabella = "DROP TABLE ".$nome_tabella."";
    $ResultEliminaTabella = mysql_query($EliminaTabella,$conn) or die ("eliminazione tabella fallita");

    Grazie

  2. #2
    L'avatar di radioradianti
    radioradianti non è connesso Utente storico
    Data registrazione
    26-11-2003
    Residenza
    Roma
    Messaggi
    1,000

    Predefinito

    prova ad utilizzare queste righe di codice.
    Le ho scritte al volo, ma le ho anche testate e funzionano.
    Guarda se possono tornarti utili, sicuramente esiste una soluzione più elegante.

    Codice PHP:
    <?
    //Impostazione variabili per cancellazione e conessione DB
    //--------------------------------------------------------
    $user="tuo_user";
    $pass="tua_password";
    $db_name="tuo_database";
    $matrice="200510"; //Primi caratteri del nome tabella da confrontare
    $caratteri=6; //Numero di caratteri da confrontare

    //Connessione al server
    //---------------------
    $db = mysql_connect('localhost', $user, $pass);
    if (
    $db == FALSE)
    die (
    "Errore nella connessione. Verificare i parametri inseriti");

    //selezione del database
    //----------------------
    mysql_select_db($db_name, $db)
    or die (
    "Errore nella selezione del database. Verificare i parametri inseriti");

    //Recupero della lista tabelle DB
    //----------------------------
    $tabelle=mysql_list_tables($db_name);

    //Ciclo finchè ci sono tabelle
    //-------------------------
    while ($nome_tabella = mysql_fetch_row($tabelle))
    {
    //Confronto la matrice specificata con l'inizio del nome tabella
    //---------------------------------------------------------
    if (!strncmp($matrice,$nome_tabella[0],$caratteri))
    {
    //Se la matrice corrisponde allora cancello la tabella
    //------------------------------------------------
    echo "Eliminazione tabella : ".$nome_tabella[0]."\n<BR>";
    mysql_query("Drop Table ".$nome_tabella[0]);

    }
    }
    mysql_close($db);
    ?>
    Ciao

    Leandro

    Happy Slack!

    E' on line il numero 12 di Topolinux - Totalmente rinnovato!
    TopoLinux è anche chat! irc.azzurra.org canale #topolinux
    La semplicità di questo dono è inversamente proporzionale alla qualità della nostra amicizia

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •