Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Errore nella connessione all'interno di una funzione

    Salve,

    premettendo che sono nuovo di php, ho fatto una pagina conn.php con questo codice:

    codice:
    <?php
    //pagine per la connessione al database
    $sito='localhost';
    $utente='root';
    $passa='*******';
    $database='artisti';
    
    //funzione per aprire la connessione
    function ApriConnessione()
    {
    $conn=mysql_connect($sito,$utente,$passa);
    if(!@mysql_select_db($database)){
    die('Errore. Impossibile connettersi al database '.$database);
    }
    }
    ?>
    e in un'altra pagina ho:
    codice:
    include("conn.php");
    ora quando nella pagina dove includo conn.php richiamo la funzione ApriConnessione() mi appare questo errore:

    codice:
    Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'ODBC'@'localhost' (using password: NO) in E:\Artisti\conn.php on line 11
    dove la linea 11 è:

    codice:
    $conn=mysql_connect($sito,$utente,$passa);
    secondo voi qual'è il problema?

  2. #2
    devi settare Nome utente e pws

    Il messaggio di errore ti dice che sia l'utente 'ODBC' che la psw che hai messo sono errati

    Ora ti consiglio di andare a vedere nel file di configurazione del Dbase quali sono i parametri da settare ...
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  3. #3
    ho trovato l'errore, praticamente quella funzione non leggeva le variabili $sito $utente etc che stanno nella stessa pagina. Infatti gliele ho dovute passare io come parametri


    ma come mai non me le leggeva quelle variabili? come faccio a rendere la funzione in maniera che legga da sola quelle variabili senza che gliele debba passare io?

  4. #4
    Utente di HTML.it L'avatar di M4rko
    Registrato dal
    Dec 2000
    Messaggi
    619
    Le variabili che dichiari sono in ambito globale.
    All'interno di una funzione le variabili sono locali.
    E' semplicemente un problema di scope
    http://it2.php.net/variables.scope

    Le soluzioni possono essere piu di una:
    utilizzare "global" all'interno della funzione,
    passare le variabili come parametro,
    utilizzare l'array $GLOBALS,
    ...
    Tutti hanno bisogno di credere in qualcosa.
    Io credo che mi farò un'altra birra.


  5. #5
    [supersaibal]Originariamente inviato da M4rko
    Le variabili che dichiari sono in ambito globale.
    All'interno di una funzione le variabili sono locali.
    E' semplicemente un problema di scope
    http://it2.php.net/variables.scope

    Le soluzioni possono essere piu di una:
    utilizzare "global" all'interno della funzione,
    passare le variabili come parametro,
    utilizzare l'array $GLOBALS,
    ... [/supersaibal]
    Guista osservazione

    Ma.. per una connessione al dba se non sei in OOP non serve una funzione basta uno script

    Codice PHP:
    <?php 
        $host
    ='127.0.0.1';
        
    $conmysql_connect($host,'root')or die ("Non riesco a connettermi al server ...  ");
        
    mysql_select_db('Cyber'$con)or die (" Non trovo il database ...");
    ?>
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

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.