Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    connessione a Mysql con PHP5

    Premetto che ho iniziato a usare Mysql l'altro giorno.... VVoVe: prima usavo Access(!!!)

    La situazione è questa: Apache e Mysql sono installati e configurati su un PC di rete con IP 192.168.1.10, e su tutti i vari "manuali" è sempre e solo proposto localhost (per "comodità"??? Bah... :master: ) e vorrei che il buon Mysql venisse interrogato dal PHP mediante pagine html, precisamente questa:

    ================================================== ===================
    <html>
    <head>
    <title>Accesso a database</title>
    </head>

    <body>
    <?php
    $host = '192.168.1.10';
    $user = 'root';
    $password = 'diego';
    $database = 'videoteca';

    $db = mysql_connect($host, $user, $password) or die ("Impossibile connettersi al server $host");

    $query = "select * from videoteca";
    $dbResult = mysql_query($query, $db);
    $AffectedRows = mysql_affected_rows($db);

    print("<h3>Accesso al database $database sul server $host</h3>");
    print("<h3>Username = $user</h3>");
    print("<h3>Password = $password</h3>");
    print("<he>Query = $query</h3>");
    print("<h3>Numero di record trovati: $AffectedRows</h3>");

    mysql_close($db);
    ?>
    </body>
    </html>
    ================================================== ===================

    ed è qui il problema: non riesco a farlo connettere al database!! Dove sbaglio????? Possibile che devo SEMPRE utilizzare come "host" localhost??? :master:
    Mysql riconosce che l'host è 192.168.1.10 (con Mysql-front l'host è questo) e aprendo una sessione internet Apache risponde correttamente!!


    Spero di aver fatto capire il problema.

    G R A Z I E ! ! ! !

  2. #2
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    Apache e MySQL stanno su due server differenti (quindi con IP differenti)?

  3. #3
    potresti spiegarti meglio?

    che errore ti da? :master:

    PS: hai dato la possibilità all'utente root di connettersi da ip diversi dal localhost?

  4. #4
    Mysql e Apache sono installati sullo stesso PC (IP=192.168.1.10) e l'utente root ha tutti i diritti per tutti gli host e database.

    Per quanto riguarda gli errori, non segnala NIENTE! posso mettere come host qualsiasi cosa (localhost, l'IP, pippo pluto e paperino) ma niente, ritorna sempre alla pagina html senza eseguire nulla di quello che dovrebbe!!!

  5. #5
    [supersaibal]Originariamente inviato da diego0205
    Mysql e Apache sono installati sullo stesso PC (IP=192.168.1.10) e l'utente root ha tutti i diritti per tutti gli host e database.

    Per quanto riguarda gli errori, non segnala NIENTE! posso mettere come host qualsiasi cosa (localhost, l'IP, pippo pluto e paperino) ma niente, ritorna sempre alla pagina html senza eseguire nulla di quello che dovrebbe!!! [/supersaibal]
    Se sono installati sullo stesso ti conviene provare lasciando scritto localhost.
    Comunque nel codice non hai selezionato il database e alla fine della query manca il ';'
    <!-- Debian GNU/Linux 4.0 Kernel 2.6.x -->
    ftp://ftp.it.debian.org/
    http://www.php.net/

  6. #6
    [supersaibal]Originariamente inviato da diego0205
    Per quanto riguarda gli errori, non segnala NIENTE! posso mettere come host qualsiasi cosa (localhost, l'IP, pippo pluto e paperino) ma niente, ritorna sempre alla pagina html senza eseguire nulla di quello che dovrebbe!!! [/supersaibal]
    Strano, con paperino dovrebbe funzionare

    Mi sembra manchi il
    mysql_select_db()
    infatti hai dichiarato la variabile $database ma non l'hai mai usata.

  7. #7
    e' il db chi lo sceglie???? :master:

    mysql_select_db.....


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

  8. #8
    [supersaibal]Originariamente inviato da skidx
    Strano, con paperino dovrebbe funzionare

    Mi sembra manchi il
    mysql_select_db()
    infatti hai dichiarato la variabile $database ma non l'hai mai usata. [/supersaibal]
    tatatataaaaaa ...

    va be...

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

  9. #9
    okokokokokokokokokok colpa mia.

    ================================================== ================
    <html>
    <head>
    <title>Accesso a database</title>
    </head>
    <body>
    <?php
    $host = "192.168.1.10";
    $user = "root";
    $password = "diego";
    $database = "videoteca";

    mysql_connect($host, $user, $password) or die ("BYE");
    mysql_select_db($database) or die ("Impossibile trovare il database");

    $query = "select * from rubrica";
    $dbResult = mysql_query($query, $db);
    $AffectedRows = mysql_affected_rows($db);

    print("<h3>Accesso al database $database sul server $host</h3>");
    print("<h3>Username = $user</h3>");
    print("<h3>Password = $password</h3>");
    print("<h3>Query = $query</h3>");
    print("<h3>Numero di record trovati: $AffectedRows</h3>");

    mysql_close($db);
    ?>

    </body>
    </html>
    ================================================== ===============

    anche se cmq il problema non è nella selezione del db ma prima, al momento della connessione. Con Apache 2 non veniva segnalato alcun messaggio, tornando ad Apache 1.3 segnala questo errore:

    ================================================== =================
    Warning: MySQL Connection Failed: Client does not support authentication protocol requested by server; consider upgrading MySQL client in g:\programmi\apache group\apache\htdocs\prova\8-1.php on line 12
    BYE
    ================================================== =================

    Quantomeno è già un inizio. MySQL è configurato in modo che l'utente root abbia tutti i diritti su tutti gli host e su tutti i database.

    E LA PASSWORD E' GIUSTA!!!
    dalla riga di comando si entra tranquillamente, dalla connessione con php no.

  10. #10
    ci sono parecchi thread su questo "problema". In poche parole l'hash con cui e' memorizzata la password di sistema (db mysql tabella user) prima era a 16 digit ora e' a 40.

    Php4 rispetto a mysql 4.1 ha un client mysql ver. 3.x definito old_client che crea un hash a 16 digit. Ora php manda 16 dove mysql aspetta 40. chiaro che non va.

    La soluzione? leggi questa pagina del manuale....

    http://dev.mysql.com/doc/mysql/en/old-client.html


    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.