Connexion à une autre base MySQL que celle de SPIP

Bonjour,

Je rencontre un problème d'inclusion de code PHP&MySQL dans un article SPIP.
Il semble que ma connexion vers une autre base que celle de SPIP perturbe la
connexion mysql de SPIP.

Voici la situation et les symptomes
J'ai créé une rubrique 33 et un fichier article=33.html dans lequel j'ai fait
une inclusion perso.php
_________________________________________________
[<div class="chapo">(#CHAPO)</div>]
[<div class="texte">(#TEXTE)</div>]
[<div class="ps">(#PS)</div>]
[<div class="notes">(#NOTES)</div>]

<!--INCLUSION-->
<p>
<?php
  include("perso.php");
?>
</p>
<!--FIN INCLUSION-->
_________________________________________________

Ma page perso.php:
_________________________________________________
<?php
  require("connexion.php");
  require("requete.php");
  require("parametres/parametres.php");

  echo "<p>Un petit texte dans l'inclusion perso.php</p>";

  $idconnexion=connexion($utilisateur,$motdepasse,$base,$serveur);

  $sql="SELECT elenom,elepre,divcod FROM fele ORDER BY divcod,elenom,elepre";
  $resultat=execute_sql($sql,$idconnexion);

  if($resultat){
    echo "<table>";
    while($ligne=mysql_fetch_object($resultat)){
      echo
"<tr><td>$ligne->elenom</td><td>$ligne->elepre</td><td>$ligne->divcod</td></tr>";
    }
    echo "</table>";
  }
  $finconnexion=mysql_close($idconnexion);

?>
_________________________________________________
Le fichier parametres/parametres.php contient les valeurs des variables
$utilisateur,$motdepasse,$base,$serveur utilisées ensuite.
Mes fonctions connexion() et execute_sql() effectuent mysql_connect($serveur,
$utilisateur,$motdepasse), mysql_select_db($base,$idconnexion) et
mysql_query($sql,$idconnexion).

J'obtiens bien mes données dans un tableau, mais j'obtiens aussi:
_________________________________________________
Warning: mysql_query(): Access denied for user: 'apache@localhost' (Using
password: NO) in /home/www/html/steph/intratest/ecrire/inc_db_mysql.php3 on
line 25

Warning: mysql_query(): A link to the server could not be established
in /home/www/html/steph/intratest/ecrire/inc_db_mysql.php3 on line 25

Warning: mysql_query(): Access denied for user: 'apache@localhost' (Using
password: NO) in /home/www/html/steph/intratest/ecrire/inc_db_mysql.php3 on
line 25

Warning: mysql_query(): A link to the server could not be established
in /home/www/html/steph/intratest/ecrire/inc_db_mysql.php3 on line 25

Warning: mysql_query(): Access denied for user: 'apache@localhost' (Using
password: NO) in /home/www/html/steph/intratest/ecrire/inc_db_mysql.php3 on
line 25

Warning: mysql_query(): A link to the server could not be established
in /home/www/html/steph/intratest/ecrire/inc_db_mysql.php3 on line 25
_________________________________________________

Qu'est-ce qui pose problème?

J'ai tenté de remplacer toutes mes variables en plaçant un préfixe 'azerty'.
Les symptomes sont les mêmes.
Le nom de variable ne semble donc pas poser problème.

J'ai l'impression qu'il y a un problème avec l'identifiant de connexion mysql
de SPIP.

Comment convient-il d'accéder à une base de données mysql autre que celle de
SPIP?

J'ai alors pensé à éviter d'effectuer une nouvelle connexion vers une autre
base mysql.
J'ai tenté de créer des liens dans la base de SPIP vers ma base externe en
mettant les droits à l'utilisateur mysql (en veillant à ce que l'utilisateur
mysql autorisés pour la base SPIP et mon autre base soient le même), mais je
ne sais pas comment formuler mes requêtes.
Où puis-je récupérer l'identifiant de la connexion à la base mysql de SPIP?

Merci.
--
Stephane.

Je rencontre un problème d'inclusion de code PHP&MySQL dans un article SPIP.
Il semble que ma connexion vers une autre base que celle de SPIP perturbe la
connexion mysql de SPIP.

Dans ecrire/inc_version.php3 :

// faut-il faire des connexions completes rappelant le nom du serveur et de
// la base MySQL ? (utile si vos squelettes appellent d'autres bases MySQL)
$mysql_rappel_connexion = false;

Essaie avec true à la place de false :slight_smile:

-- Fil

Bonjour,

Le mercredi 15 Septembre 2004 21:07, Fil a écrit :

> Je rencontre un problème d'inclusion de code PHP&MySQL dans un article
> SPIP. Il semble que ma connexion vers une autre base que celle de SPIP
> perturbe la connexion mysql de SPIP.

Dans ecrire/inc_version.php3 :

// faut-il faire des connexions completes rappelant le nom du serveur et de
// la base MySQL ? (utile si vos squelettes appellent d'autres bases MySQL)
$mysql_rappel_connexion = false;

Essaie avec true à la place de false :slight_smile:

C'est magique;o)!

Ca marche impeccablement.
Et puis il est bien commenté ce fichier inc_version.php3 (à éplucher...)

Merci beaucoup.
--
Stephane.