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.