Posez votre question Signaler

[PHP] Fatal error

Djeak - Dernière réponse le 24 déc 2007 à 12:12
Bonjour tous le monde.
C'est la premiére fois que je vien sur ce forum et je vous le dit, je vien de commencé le php.
Mon probleme est que sur ma page ou on est censé se connecté a la base de données etc...on me dit:
"Fatal error: Call to undefined function: mysqli_connect() in /mnt/163/sdb/f/b/djeaks/connexion.php on line 12"
Sachant que la ligne 12 c'est celle la (avec le programme autour pour mieu comprendre^^)
$user="";
$host="";
$password="";
$database="";
$connexion=mysqli_connect($host, $user, $password) <===Ligne 12
or die ('Connexion impossible');
$db=mysqli_select_db($connexion, $database)
or die ('Connexion impossible');
SVP aidé moi, je suis desespérer...
Merci d'avance
PS; Si quelque peut me dire ce qu'on doit mettre dans "$host" ce serai sympa. Je sui héberger chez free
Lire la suite 

[PHP] Fatal error »

10 réponses
Réponse
+0
moins plus
mysqli_connect ?

ce n'est pas mysql_connect ? (-même chose pour select)

Sinon pour host ce n'est pas l'adresse IP de la base de données ? On la voit dans le phpMyAdmin
Ajouter un commentaire
Réponse
+0
moins plus
mysql_ ou mysqli ca dépent de l'extension utilisée (les deux existes http://fr.php.net/mysql http://fr.php.net/mysqli) la dernière est la version améliorée pour mysql >= 4.1.
Mais effectivement si free ne fournit pas l'extension mysqli il faut essayer mysql.
Ajouter un commentaire
Réponse
+0
moins plus
salut
si tu es chez FREE donc en PHP5 tu peux utiliser Mysqli (Plus rapide que Mysql)
Sinon, voila comment faire :
pour acceder a PHPMyAdmin vas sur sql.free.fr

exemple ton espace est toto02.free.fr
<?php
$user="toto02";
$host="ftpperso.free.fr";
$password="ton passe";
$database="toto02";

$connexion=mysqli_connect($host, $user, $password) <===Ligne 12
or die ('Connexion impossible');
$db=mysqli_select_db($connexion, $database)
or die ('Connexion impossible');
?>

Si ce code plante c'est que tu n'est pas en présence de PHP5, essaye alors la fonction mysql_connect et mysql_select_db

@+
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour

Je suis hébergé chez Free
pour free
$host = 'localhost';

Sinon, ton mysqli_connect inconnu c'est parce que tu tournes avec PHP4
tu as 2 options :
. utiliser les fonctions mysql_ au lieu de mysqli_ en restant sous PHP4
. tourner sous PHP5 , ce que je te conseille, en gardant test fonctions mysqli_ mais en mettant dans le fichier.htaccess à la racine de ton site :
<ifDefine Free>
PHP 1
</ifDefine>
Ajouter un commentaire
Réponse
+0
moins plus
Merci beaucoup pour vos reponses. En fait c'etait un erreur vraiment bete^^
En tous cas, tous marche maintenant donc merci encore

PS: Ce site est trop génial!!!^^
Ajouter un commentaire
Réponse
+0
moins plus
Salut, j'ai exactement la même erreur... Je travaille sur mon serveur web local (IIS) avec PHP 5.2.5 et MySQL Server 5.0 installés et apparement fonctionnels.
Le code source vient du bouquin "PHP et MYSQL pour les nuls"
Comme ici c'est un simple test de dialogue entre PHP et MySQL je n'ai pas la ligne spécifiant la DB mais simplement :

$host="localhost";
$user="";
$password="";

$cxn=mysqli_connect($host, $user, $password);
$sql="SHOW STATUS";
$result=mysqli_query($cxn,$sql);
etc etc

Je ne trouve pas de solution avec ce qui a été expliqué plus haut dans ce topic... Vous pouvez m'aider ?

Merci beaucoup...
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour

Si tu préfères travailler avec l'interface mysql améliorée (mysqli_...) ce qui est fortement conseillé, va dans le fichier php.ini du répertoire où se trouve ton php 5 et ôte le point virgule au début de la ligne :

extension=php_mysqli.dll
Ajouter un commentaire
Réponse
+0
moins plus
Salut,

pour répondre à MadeByVince deux topic plus haut:

- tu devrais faire un autre topic

- si tu ne selectionnes pas la base, SHOW STATUS ne pourra pas te donner les infos sur les tables qui sont dedans

et pour afficher tout il faut "sortir " $result de la zone mémoire d'extraction:

while ($ligne=mysql_fetch_array($result){
  // et afficher tout en parcourant tous les elements de l'array $ligne
   for($i=0;$i<sizeof($ligne);$i++){
        echo $ligne[$i]."<br>";

  }



}
le père - 24 déc 2007 à 12:12
Bonjour

SHOW STATUS n'a pas besoin de base. Cette commande donne des infos sur le serveur lui-même.
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour vos réponses, je vais essayer ça au plus tôt car je suis en train de reformatter mon serveur...
Une fois la machine opérationelle je vérifierai le paramètre donné par le père.
Pour la suggestion d'Alain, je n'ai fait que prendre la source telle quelle dans le bouquin. Ce code est sensé simplement m'afficher une table avec les variables du server MySQL et leurs valeurs comme le fait la commande <?php phpinfo(); ?> pour les infos associées à PHP.
Bien sur ici j'ai coupé le code pour juste mettre le début car la source complète à aussi une partie servant à afficher la table et son contenu mais comme mon problème est directement lié à la ligne de cote faisant le mysqli_connect je n'ai pas jugé nécéssaire d'allourdir le message avec la suite...
Ajouter un commentaire
Ce document intitulé « [PHP] Fatal error » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook