Mon script php genere une erreur pourquoi ?

Eléphanteau du PHP | 10 Messages

15 juil. 2014, 20:01

wamp 2.5 mysql apache actif et myphpadmin me dit que ma base sql est creé

voici mon script :
<head>
<title>test de la connexion SQL</title>
</head>
<html>
<body>
<h1> Test de la connexion avec MySQL
</h1>

<br>

<?php
$host = "localhost"; /* L'adresse du serveur */
$login = "root"; /* Votre nom d'utilisateur */
$password = ""; /* Votre mot de passe */
$base = "visite"; /* Le nom de la base */

$db = mysql_connect($host, $login, $password);
mysql_select_db($base,$db);

?>

</body>
</html>

wamp me dit qu'il y une erreur ligne 17 soit "$db = mysql_connect($host, $login, $password);"

comment corriger le probleme

Mammouth du PHP | 1339 Messages

15 juil. 2014, 20:10

Et l'erreur elle dit quoi en fait ...
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 10 Messages

15 juil. 2014, 20:20

merci d'avance pour votre aide
le message d'erreur est le suivant :
( ! ) Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\wamp\www\install.php on line 17
Call Stack
# Time Memory Function Location
1 0.0000 243096 {main}( ) ..\install.php:0
2 0.0000 243856 mysql_connect ( ) ..\install.php:17

Mammouth du PHP | 1339 Messages

15 juil. 2014, 21:24

Bah voilà ...

Faut se ternir au courant ! : http://php.net/manual/fr/function.mysql-connect.php
Avertissement

Cette extension est obsolète depuis PHP 5.5.0, et sera supprimée dans le futur. À la place, les extensions MySQLi ou PDO_MySQL doivent être utilisées. Voir aussi le guide MySQL : choix de l'API ainsi que la FAQ associée pour plus d'information. Voici les alternatives à cette fonction :

mysqli_connect()
PDO::__construct()
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 10 Messages

15 juil. 2014, 21:30

Merci de cet eclairage !

mais j'ai encore une erreur

( ! ) Fatal error: Non-static method PDO::__construct() cannot be called statically in C:\wamp\www\install.php on line 17
Call Stack
# Time Memory Function Location
1 0.0000 243208 {main}( ) ..\install.php:0

Mammouth du PHP | 1339 Messages

15 juil. 2014, 21:34

Utilise plutot mysqli va ...
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphanteau du PHP | 10 Messages

16 juil. 2014, 09:57

le install.php ne s'execute pas :

<head>
<title>test de la connexion SQL</title>
</head>
<html>
<body>
<p> Test de la connexion avec MySQL :
</p>

<br>

<?php
$host = "localhost:8080";
$login = "root";
$password = "";
$base = "visite";

$db=mysqli::__construct($host, $login, $password);
$db=mysqli_select_db($base,$db);

echo "[";
print $db;
echo "]<br></br>";

?>

</body>
</html>

et la html me sort une erreur comme suit ?

( ! ) Fatal error: Non-static method mysqli::mysqli() cannot be called statically in C:\wamp\www\install.php on line 17
Call Stack
# Time Memory Function Location
1 0.0010 242752 {main}( ) ..\install.php:0

Quelle est l'erreur ?

Eléphanteau du PHP | 10 Messages

16 juil. 2014, 09:57

le install.php ne s'execute pas :

<head>
<title>test de la connexion SQL</title>
</head>
<html>
<body>
<p> Test de la connexion avec MySQL :
</p>

<br>

<?php
$host = "localhost:8080";
$login = "root";
$password = "";
$base = "visite";

$db=mysqli::__construct($host, $login, $password);
$db=mysqli_select_db($base,$db);

echo "[";
print $db;
echo "]<br></br>";

?>

</body>
</html>

et la html me sort une erreur comme suit ?

( ! ) Fatal error: Non-static method mysqli::mysqli() cannot be called statically in C:\wamp\www\install.php on line 17
Call Stack
# Time Memory Function Location
1 0.0010 242752 {main}( ) ..\install.php:0

Quelle est l'erreur ?

Mammouth du PHP | 2278 Messages

16 juil. 2014, 10:32

Bjr,
Titre pas bien clair. Avec une mention de Mysql dans le titre ça irait mieux. Peut-être même se servir du forum dédié (ne reposte pas c'est interdit)
Tu confonds la syntaxe de définition et celle à l'exécution.
Exemple silple et suffisant:
http://us2.php.net/manual/fr/mysqli.qui ... ements.php
ou ici: (-exemple procédural et objet) http://us2.php.net/manual/fr/mysqli.qui ... erface.php
<?php
$mysqli = mysqli_connect("example.com", "user", "password", "database");
$res = mysqli_query($mysqli, "SELECT 'Please, do not use ' AS _msg FROM DUAL");
$row = mysqli_fetch_assoc($res);
echo $row['_msg'];

$mysql = mysql_connect("example.com", "user", "password"); 
mysql_select_db("test");
$res = mysql_query("SELECT 'the mysql extension for new developments.' AS _msg FROM DUAL", $mysql);
$row = mysql_fetch_assoc($res);
echo $row['_msg'];
?>
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Eléphanteau du PHP | 10 Messages

17 juil. 2014, 15:59

Bonjour
Merci a toi sirakawa de me consacrer du temps !

J'ai sasie ton script et modifié comme cela :

<?php
$mysql_host="localhost";
$mysql_user="root";
$mysql_pass="seponta";
$mysql_base="visite";

$mysqli = mysqli_connect($mysql_host, $my_sql_user, $mysql_pass, $mysql_base);
$res = mysqli_query($mysqli, "SELECT 'Please, do not use ' AS _msg FROM DUAL");
$row = mysqli_fetch_assoc($res);
echo $row['_msg'];

$mysql = mysqli_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_select_db($mysql_base);
$res = mysql_query("SELECT 'the mysql extension for new developments.' AS _msg FROM DUAL", $mysql);
$row = mysql_fetch_assoc($res);
echo $row['_msg'];

mais il me genere des erreurs comme suit :

( ! ) Notice: Undefined variable: my_sql_user in C:\wamp\www\visite\install.php on line 14
Call Stack
# Time Memory Function Location
1 0.0010 255616 {main}( ) ..\install.php:0

( ! ) Warning: mysqli_connect(): (HY000/1045): Access denied for user ''@'localhost' (using password: YES) in C:\wamp\www\visite\install.php on line 14
Call Stack
# Time Memory Function Location
1 0.0010 255616 {main}( ) ..\install.php:0
2 0.0090 256888 mysqli_connect ( ) ..\install.php:14

( ! ) Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in C:\wamp\www\visite\install.php on line 15
Call Stack
# Time Memory Function Location
1 0.0010 255616 {main}( ) ..\install.php:0
2 0.0330 257232 mysqli_query ( ) ..\install.php:15

( ! ) Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, null given in C:\wamp\www\visite\install.php on line 16
Call Stack
# Time Memory Function Location
1 0.0010 255616 {main}( ) ..\install.php:0
2 0.0430 257224 mysqli_fetch_assoc ( ) ..\install.php:16

( ! ) Warning: mysqli_connect(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: YES) in C:\wamp\www\visite\install.php on line 19
Call Stack
# Time Memory Function Location
1 0.0010 255616 {main}( ) ..\install.php:0
2 0.0540 257504 mysqli_connect ( ) ..\install.php:19

( ! ) Deprecated: mysql_select_db(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in C:\wamp\www\visite\install.php on line 20
Call Stack
# Time Memory Function Location
1 0.0010 255616 {main}( ) ..\install.php:0
2 0.0770 257656 mysql_select_db ( ) ..\install.php:20

( ! ) Warning: mysql_query() expects parameter 2 to be resource, boolean given in C:\wamp\www\visite\install.php on line 21
Call Stack
# Time Memory Function Location
1 0.0010 255616 {main}( ) ..\install.php:0
2 0.0910 265368 mysql_query ( ) ..\install.php:21

( ! ) Warning: mysql_fetch_assoc() expects parameter 1 to be resource, null given in C:\wamp\www\visite\install.php on line 22
Call Stack
# Time Memory Function Location
1 0.0010 255616 {main}( ) ..\install.php:0
2 0.1030 265176 mysql_fetch_assoc ( ) ..\install.php:22

ce qui correspond a une erreur sur la ligne suivante :

$mysqli = mysqli_connect($mysql_host, $my_sql_user, $mysql_pass, $mysql_base);

Est ce une erreur du à wamp 2.5 (derniere version) qui ne saurait interpreter le msqli de la ligne php ???

Eléphanteau du PHP | 10 Messages

17 juil. 2014, 16:23

pourquoi cet exemple ne marche pas chez moi ???

$serveur = 'localhost';
$database = 'livre';
$username = 'root';
$password = 'password';
$mysqli = new mysqli($serveur,$username,$password,$database);
if ($mysqli->connect_errno) {
printf("Échec de la connexion : %s\n", $mysqli->connect_error);
exit();
}

Est ce normal ???

ps: La base a été creer sous phpmyadmin

Eléphanteau du PHP | 10 Messages

17 juil. 2014, 17:58

J'ai trouvé :
$dbc = @mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME)
ceci marche impéccable, merci de ton aide...

Mammouth du PHP | 1339 Messages

17 juil. 2014, 18:19

Le @ sert juste a masquer l'erreur ... C'est absurde !
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Mammouth du PHP | 2278 Messages

17 juil. 2014, 18:45

En revanche:
$mysqli = mysqli_connect($mysql_host, $my_sql_user, $mysql_pass, $mysql_base);
$res = mysqli_query($mysqli, "SELECT 'Please, do not use ' AS _msg FROM DUAL");
$row = mysqli_fetch_assoc($res);
echo $row['_msg'];

$mysql = mysqli_connect($mysql_host, $mysql_user, $mysql_pass);




( Notice: Undefined variable: my_sql_user in C:\wamp\www\visite\install.php on line 14
explique la suite
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD