par
Ajoloca » 14 nov. 2006, 06:42
Bonjour,
je ne comprend pas pourquoi, puisqu'il n'est pas necessaire de definir une variable en php ...
Ce n'est pas tout à fait vrai (dans le sens ou tu l'entends), ne confonds pas définir et déclarer.
Définir veux dire donner son type, sa taille à la déclaration (avant de l'initialiser) comme en C, C++, Java, etc...
PHP est un language faiblement typé (une variable s'adaptera au type de la donnée qu'elle contient), dans ce sens, on à pas besoin de définir une variable en PHP. Elle se définie et se déclare à son initialisation.
En plus ton code a d'autres soucis.
<?php
require("conf/cfg-inc.php3");
$res = @mysql_connect($cfgHote,$cfgUser,$cfgPass) or die ("probleme connexion");
@mysql_select_db($cfgBase,$res) or die ("probleme dans selection base");
$x = strlen($search); <---la ligne 98........
if ($x != 0)
{
if ($res <> 0)
{
...
D'après cette ligne
$res = @mysql_connect($cfgHote,$cfgUser,$cfgPass) or die ("probleme connexion");
La variable $res est une ressource (renvoyée par MySQL) et dans cette ligne
if ($res <> 0)
tu la compares à un entier. PHP est faiblement typé mais pas à ce point.
De toutes manières ton test est inutile (tu sais que $res contient obligatoirement QQ chose different de 'false', ce que je suppose que tu as voulu tester) sinon tu ne serais jamais arrivé là.
Dans cette ligne
$res = @mysql_connect($cfgHote,$cfgUser,$cfgPass) or die ("probleme connexion");
Tu as un 'die' en cas d'erreur ton PGM t'envoi le message et s'arrête.