PLesk : mssql, msql, odbc, dbx_connect.. rien ne va plus :)

Nouveau WRInaute
Bonjour,

J'ai besoin de réaliser un formulaire de contact assez inhabituel pour la société qui m'emploie.
On a deux serveurs dédiés chez OVH. Le serveur 1 (un ns) est sous Windows Server 2003 pour une application métier. Le serveur 2 (un ks) est sous linux avec Plesk 8.6 (a jour) et héberge les sites internet.

Pour un projet qui doit arriver très bientôt je dois faire un formulaire qui doit insérer des données dans une base de données SQL Server de notre serveur 1 depuis le site web (donc serveur 2).

Je connais 4 fonctions qui permettent d'exécuter des requêtes en PHP vers SQL Server mais aucune ne fonctionnent !

J'ai monté ce petit bout de code vite fait pour tester le PHP installé sur notre serveur 2 (PHP 5.0.4 au passage) :

Code:
ini_set('display_errors', TRUE);
error_reporting(E_ALL | E_STRICT);


if (function_exists(@mssql_connect))   {
	echo "oui pour MSSQL !<br />";
}
if (function_exists(@msql_connect))   {
	echo "oui pour MSQL !<br />";
}
if (function_exists(@odbc_connect))   {
	echo "oui pour ODBC !<br />";
}

if (function_exists(@dbx_connect))   {
	echo "oui pour dbx_connect !<br />";
	
	$link = dbx_connect(DBX_MSSQL, "IP_DU_SERVER:PORT", "MA_BDD", "LOGIN", "PASS") or die("Impossible de se connecter");
	echo "Connexion réussie";
	dbx_close($link);	
}

et il ne me retourne que ça :

oui pour dbx_connect !


Warning: dbx_connect() [function.dbx-connect]: dbx: module '4' not loaded or not supported. in /var/www/vhosts/monsite.com/httpdocs/test/test.php on line 47

Impossible de se connecter

En gros, sur les 4 fonctions que je connais, il n'y en a qu'une qui est reconnue et elle ne l'est qu'a moitié car le module 4 (celui pour SQL Server) n'est pas supporté apparement. Je l'ai testée avec le module 1 (DBX_MYSQL) et il fonctionne.

Est-ce que c'est inhérent à Plesk et surtout est-ce qu'il y a un moyen d'éxecuter des requêtes en PHP depuis un serveur Plesk linux vers une BDD distante SQL Server?

Ce projet qui au départ n'était pas pressé commence à l'être vraiment maintenant à cause du temps que j'ai perdu à faire des recherches sans succès.

Merci d'avance à tous ceux qui répondront ;)
 
WRInaute discret
Hello,

dans ta situation et dans l'urgence, peut être qu'une astuce comme celle là peut être viable.

- Le formulaire est sur le serveur linux.
- Envoyer les données à un fichier sur le serveur Windows via l'attribut "action" de la balise "form"
- Le fichier fait l'insertion dans la base de données
- Faire ensuite une redirection vers le site.

Ce n'est pas très propre mais c'est rapide à mettre en place.
 
Nouveau WRInaute
Salut, merci de ta réponse :)

J'y ai pensé oui, mais le hic c'est que pour ça faut que je fasse un script asp qui réceptionne les données puis fasse la redirection, et moi et l'asp ça fait 2 ^^
En plus de ça, si je peux éviter de "publier" l'adresse IP du serveur 1 ça m'arrange (ok, c'est que dans le code source du formulaire mais bon ...)

En attendant de trouver une solution à ce problème j'ai mis en place un système de base de données tampon sur le serveur 2 (donc en mysql) avec un systeme d'appel de script présent sur le serveur 1 (script asp qui n'a pas été monté par moi mais par un prestataire) et ce script parse les données que je met à disposition sur un flux xml généré à la volée.

C'est plus long, un peu plus crade mais au moins ça marche tout de suite. :)
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut