• User Newbie

    URL in query ALTER TABLE: problemi di parsing o cosa?

    Ciao a tutti! Mi sono iscritto oggi nel vostro forum, a cui ogni tanto ricorro per dare una letta e risolvere i miei dubbi grazie alla vostra disponibilità e alla vostra bravura. Stavolta vi devo scrivere, visto che finora nn ho trovato soluzioni al problema.

    Come argomento della mia tesi, devo modificare un motore di ricerca già esistente per implementarci delle funzionalità ulteriori. Fatto sta che mi ritrovo a dover lavorare su una matrice sulle cui righe sono poste le query sottoposte al sistema, e sulle cui colonne sono messe tutte le pagine html memorizzate dal motore di ricerca. Ora, mi ritrovo a dover creare questa matrice basandomi sull'indicizzazione già svolta dal motore di ricerca, quindi dovrò interrogare il database presente, prendere i risultati e piazzarli nella matrice. Ripeto: sulle righe andranno le query sottoposte al sistema, e sulle colonne le pagine web.

    Ora ho proprio dei problemi ad inserire le pagine web come colonne della matrice. Un url <---> una colonna. Ho pensato di implementare il tutto tramite il comando SQL ALTER TABLE, chiamato correttamente all'interno di un foreach che scorre l'array dei risultati di una query precedente, che dà proprio l'insieme di tutte le pagine html memorizzate. Il codice che ho usato quindi è questo:

    function hitmatrix_create($id_connect) {

    print "Inizio ---  ";
    
    echo "<br>";
    
    $query= "SELECT site_complete_url FROM searchresults";
    $query_pages= mysql_query ($query,$id_connect);
    
        
    while ($records = mysql_fetch_row($query_pages)) {
    
    foreach ($records as $record) {
    
    echo gettype ($record);
    
    echo " --> record: ".$record."<br>";    
    
    $query1= "ALTER TABLE hitmatrix ADD ".$record." CHAR (80) NULL";
    mysql_query($query1,$id_connect);
    
    }    
    

    }

    Ma niente! Non riesco a far funzionare la query. Il messaggio d'errore del server è sempre lo stesso, un banalissimo errore di sintassi relativo alla query stessa.

    Ora ho ipotizzato un problema relativo al parsing della variabile $record (che è un indirizzo web del tipo http://www.google.com ), ma il bello è che la stessa variabile utilizzata in una insert classica, fa funzionare il tutto. In un ALTER TABLE strutturato così invece no.

    Che voi sappiate, gli URL danno problemi in questo tipo di query? Magari qcs relativo ai due punti o agli slash?

    Aiutatemi voi per favore che nn so dove sbattere la testa...

    Grazie mille a tutti! :ciauz::ciauz::ciauz: