IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

connexion impossible de php à mysql via mysql_connect("")


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 31
    Points : 20
    Points
    20
    Par défaut connexion impossible de php à mysql via mysql_connect("")
    Bonjour

    J'ai un problème de connexion à MySQL. J'ai déjà résolu un premier problème relatif aux erreurs de syntaxe dans mon code PHP à travers les indications de Mr Sabotge( que je remercie de passage pour sa contribution) . Après plusieurs vérifications sur mes configurations j'ai fait en sorte que j'affiche les erreurs PHP sur mon navigateur. Ainsi à l'exécution du code (partie formulaire non incluse...) ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
     <?php
    	mysql_connect("localhost", "usernoroot", "passwdfordb");
    	mysql_select_db("db_name");
    	/* 1) Enregistrement d'un message envoyé :  */
    	if(isset($_POST['pseudo']) AND isset($_POST['message']))
    	{
    		$pseudo = $_POST['pseudo'];
    		$message = $_POST['message'];
    		$message = nl2br($message);
    		mysql_query("INSERT INTO livre_dor(id, pseudo, message) VALUES ('', '" . $pseudo . "', '" . $message . "')") or die(mysql_error());
    	}	
    	/* 2) Ecriture des liens vers les pages : */
     
    	// Fixation du nombre de message par page :  
    	$message_number_per_page = 20;
    	// Récupération du nombre total de message : 
    	$contened_message = mysql_query('SELECT COUNT(*) AS nbr_message FROM livre_dor') or die(mysql_error());
    	$message_number_temp = mysql_fetch_array($contened_message);
    	$total_message_number = $message_number_temp['nbr_message'];
    	// Détermination du nombre total de page : 
    	$page_number = ceil($total_message_number/$message_number_per_page);
    	// Affichage des pages 
    	echo 'Page : ';
    	for($i = 1; $i < $page_number; $i++)
    	{
    		echo '<a href="livre_dor.php?page=' . $i. '">' . $i . '</a>';
    	}
    ?>
     
    	<!-- 3) Ecriture des messages  : -->
    <?php
    	if(isset($_GET['page']))
    	{
    		$page = $_GET['page'];		// Récupération du numéro de la page : 
    	}
    	else
    	{
    		$page = 1;	// Si y a pas de page c'est que on se connecte la première fois 
    	}
    	// Recherche du nombre de message à afficher tout en limitant ce nombre par mysql LIMIT
    	$limit_message = ($page - 1)*$message_number_per_page;
    	$message_to_display = mysql_query('SELECT * FROM livre_dor ORDER By id DESC LIMIT ' .  $limit_message. ',' . $message_number_per_page) or die(mysql_error());
    	while($resultat = mysql_fetch_array($message_to_display))
    	{
    		echo '<p><strong>' . $resultat['pseudo'] . '</strong> a ecrit : <br />' . $resultat['message']. '</p>';
    	}
    	mysql_close();
    ?>
    j'obtiens le message d'erreur : Fatal error: Call to undefined function mysql_connect() in A:\projects\webdir\php\initiationWeb\livre_dor.php on line xx . La ligne xx correspond à l'instruction en première ligne du code ci-dessus.

    J'ai vérifié que la base de donnée db_name existe bien dans MySQL et qu'elle contient la table livre_dor. J'ai aussi bien vérifié le code PHP cette fois. Je ne sais pas d'où peut se situer mon problème.

    J'ai lu sur des forum des problèmes similaires. Mais certaines solutions mises en œuvre existent chez moi et le problème persiste toujours. En effet, comme PHP est utilisé comme module Apache, j'ai bien copié le fichier libmysql.dll dans WINDOWS/System32. Et voici des extraits de mes fichiers php.in:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
     [PHP]
    ;...
    ;;;;;;;;;;;;;;;;;;;;
    ; Language Options ;
    ;;;;;;;;;;;;;;;;;;;;
    ; Enable the PHP scripting language engine under Apache.
    engine = On
    ;...
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Error handling and logging ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    error_reporting  =  E_ALL
    display_errors = On
    display_startup_errors = Off
    log_errors = On
    ;...
    ;;;;;;;;;;;;;;;;;;;;;;;;;
    ; Paths and Directories ;
    ;;;;;;;;;;;;;;;;;;;;;;;;;
    doc_root =
    user_dir =
    extension_dir = "Z:/install dir/php_apache_mysql/ext/"
    ;...
    ;;;;;;;;;;;;;;;;;;;;;;
    ; Dynamic Extensions ;
    ;;;;;;;;;;;;;;;;;;;;;;
    extension=msql.dll
    extension=php_bz2.dll
    extension=php_gd2.dll
    extension=php_mbstring.dll
    extension=php_mcrypt.dll
    extension=php_msql.dll
    extension=php_mysqli.dll
    ;...
    ;;;;;;;;;;;;;;;;;;;
    ; Module Settings ;
    ;;;;;;;;;;;;;;;;;;;
    ;...
    [MySQL]
    mysql.allow_persistent = On
    mysql.max_persistent = -1
    mysql.max_links = -1
    mysql.default_port =
    mysql.default_socket =
    mysql.default_host =
    mysql.default_user =
    mysql.default_password =
    ;...
    [MySQLi]
    mysqli.max_links = -1
    mysqli.default_port = 3306
    mysqli.default_socket =
    mysqli.default_host =
    mysqli.default_user =
    mysqli.default_pw =
    mysqli.reconnect = Off
    ;...
    et config.inc.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
      <?php
    $cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
     
    $i = 0;
     
    $i++;
    /* Authentication type */
    /* $cfg['Servers'][$i]['auth_type'] = 'cookie'; Utilisé si PHP pas installé comme module Apache */
    $cfg['Servers'][$i]['auth_type'] = 'http'; /*Utilisé si PHP estinstallé comme module Apache*/
    /* Server parameters */
    $cfg['Servers'][$i]['host'] = 'localhost';
    $cfg['Servers'][$i]['connect_type'] = 'tcp';
    $cfg['Servers'][$i]['compress'] = false;
    $cfg['Servers'][$i]['extension'] = 'mysqli';
    $cfg['Servers'][$i]['controluser'] = 'pma';
    $cfg['Servers'][$i]['controlpass'] = 'pmapass';
    $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
    $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
    $cfg['Servers'][$i]['relation'] = 'pma_relation';
    $cfg['Servers'][$i]['table_info'] = 'pma_table_info';
    $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
    $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
    $cfg['Servers'][$i]['column_info'] = 'pma_column_info';
    $cfg['Servers'][$i]['history'] = 'pma_history';
    $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
    $cfg['UploadDir'] = '';
    $cfg['SaveDir'] = '';
    $cfgPmaAbsoluteUri = 'http://127.0.1.1/phpmyadmin';
    ?>
    Au départ, ma variable $cfg['Servers'][$i]['auth_type'] était positionné sur 'cookie'; en le fixant sur 'http'(à utiliser si PHP est installer comme module d'Apache?) , rien ne change. La ligne $cfgPmaAbsoluteUri = 'http://127.0.1.1/phpmyadmin' est tirée d'un bouquin. Est ce opprtun de l'utiliser dans mon cas?

    Je suis réellement coincé sur cette question ;je remercie donc tout celui ou celle qui voudrait me débloquer sur ce problème. Merci encore une fois pour la contribution de chacun.

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2005
    Messages : 357
    Points : 537
    Points
    537
    Par défaut
    Salut,
    Tu nous as montré les paramètres pour l'extension MySQLi, et pas mySQL, vérifie que mySQL est bien activé auprès de PHP

Discussions similaires

  1. acces impossible à une base MySQL via ODBC en déporté
    Par alakauf dans le forum Bases de données
    Réponses: 5
    Dernier message: 09/03/2018, 18h48
  2. [PostgreSQL] connexion impossible entre php et postresql
    Par thor76160 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 22/05/2011, 17h56
  3. Connexion Active directory PHP MySQL
    Par maxwell374 dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 16/09/2010, 09h46
  4. Connexion impossible entre php & mysql
    Par LDDL dans le forum Administration
    Réponses: 2
    Dernier message: 16/03/2010, 17h08
  5. Connexion d'une BD mysql via Delphi
    Par diouflamine87 dans le forum Bases de données
    Réponses: 1
    Dernier message: 15/06/2009, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo