Anomalie mysql_connect

Résolu
Bonjour,
j'ai basculé un site fonctionnant sous windows/iis/php4/sql4 vers linux/apache/php5/sql5 et là je me retrouve dans l'impossibilité de me connecter à la bdd. Et aucune erreur.

J'ai donc fait un script qui ne fait que la connexion à la base et à l'appel de la fonction mysql_connect la page se termine sans erreur et sans afficher l'echo mis après la fonction, comme si le traitement s'arretait dans la fonction.

4 réponses

  1. Et après l'avoir remis à E_ALL tu as eu un message d'erreur ?
    1. ce serveur n'étant pas à moi, je me suis contenté de faire un ini_set('display_errors', 1); et j'ai bien eu les messages d'erreur.
  2. Je vois une explication, même si elle me semble peu probable.
    L'affichage des erreurs est masqué et tu n'as pas l'extension mysql.
    Ça expliquerait le comportement : pas de fonction mysql_connect donc erreur, mais pas de message.
    Tu peux vérifier l'état de error_reporting et la présence de l'extension dans le php.ini

    Par contre, je doute que le .htaccess ait le moindre rapport avec le sujet
    1. merci beaucoup de m'avoir mis sur la piste, effectivement display_errors était à off !!!
  3. Si je comprends bien, tu vois le '1' mais pas le '2' ni le "Une erreur est survenue : </b>Impossible de se connecter" ?
    1. oui c'est tout à fait ça.
  4. Bonjour

    un script qui ne fait que la connexion à la base
    Tu mélanges un peu, on ne se connecte pas à une base mais à un serveur. Ensuite, on sélectionne éventuellement une base .
    Peux-tu montrer ton script (en cachant les identifiants, bien sûr)
    Remarque : respectes-tu bien les majuscules/minuscules dans le nom de ta base ? Windows s'en moque, mais Linux en tient compte
    1. ---------------------------------------------------------------
      $host1 = 'localhost';
      $db_base1_user = 'xxxxx';
      $db_base1_password = 'yyyyyy';
      $db_base1_name = 'zzzzzz';
      echo "1<br>";
      $conn = mysql_connect($host1, $db_base1_user, $db_base1_password) or die("<b>Une erreur est survenue : </b>Impossible de se connecter");
      echo "2<br>";
      mysql_select_db($db_base1_name) or die("Une erreur est survenue : Impossible de se connecter");
      echo "3<br>";
      $sql = "SELECT hcclasse, hccorps, hctitre, hccomm, hcparam,
      ---------------------------------------------------------------
      il n'y a rien de transcendant et s'il y avait une erreur du genre majuscules/minuscules, il y aurait un message d'erreur.
      Je penche plus pour un problème htaccess ou php.ini (?)