Je veux en étant sur Mysql me connecter sur une table de Sql server, y récupérer des données et les insérer dans une table qui est sur Mysql.
Ci dessous la fonction que j'ai écrite:
function transfert()
{
$myServer = "JOB";
$myUser = "root";
$myPass = "*****";
$myDB = "pi";
// connexion sur la base promo (sql server)
$dbhandle = mssql_connect($myServer, $myUser, $myPass)
or die("Connexion impossible sur le serveur $myServer");
// selection de la base de données (sql server)
$selected = mssql_select_db($myDB, $dbhandle)
or die("Ouverture impossible de la base $myDB");
echo "Vous etes bien connectes sur la base" . $myDB . " du" . $myServer . ".";
//requête SQL pour extraire le montant sur sql server
$reponse = mssql_query("SELECT * FROM F_DOCENTETE,F_CREGLEMENT WHERE F_DOCENTETE.CT_NumPayeur = F_CREGLEMENT.CT_NumPayeur");
while ($donnees = mssql_fetch_array($reponse) )
{
$db_porteur =& P4A_DB::singleton();//(La table porteur se trouve sur mysql)
$crit_porteur = $db_porteur->queryRow("SELECT * FROM porteur "); // Requête SQL
// On fait une boucle pour lister tout ce que contient la table porteur (Mysql)
while ($donneesporteur = mysql_fetch_array($crit_porteur) )
{
$nb_porteur = $donneesporteur['numero_compte1'];
$val = $donnees['RG_Montant'] ;
$num = $donnees['CG_Num'] ;
if ($nb_porteur = $num)
{
$db_pt1 =& P4A_DB::singleton();
$crit_pt1 = $db_pt1->queryRow("insert into testpromo (field4, field5) values ('$val', '$val')"); //(table testpromo sur Mysql)
}
}
}
// close the connection
mssql_close($dbhandle);
}
Et ma connexion sur Mysql est faite comme suit:
<?php
/**
*/
define("P4A_EXTENDED_ERRORS", true);
define("P4A_DSN", 'mysql://root:*****@localhost:3306/bw');
require_once( dirname(__FILE__) . '/../../p4a.php' );
$app =& p4a::singleton("p4a_base_application");
$app->main();
?>