salut à tous,
Voilà j'ai un petit soucis, je me connecte à une base de données mysql sans problème je ferme sa connection sans problème(quand je ne fais que ca).
Le problème arrive lorsque je me connecte et à la base de données mysql et à la base de données sql server via odbc. j'arrive toujours à me connecter à la base de données mysql et à l'autre base de données mais mon problème c'est quand je veux refermer la connection. j'ai l'erreur suivante : Warning: mysql_close(): 14 is not a valid MySQL-Link resource in d:\céline\programfile\easyphp1-8\www\appli\include\function\database.php on line 21
Je pense que je dois perdre la connection.
je vous montre ce que je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
$connect = tep_db_connect();
$query = tep_db_query(....);
while($result = tep_db_fetch_array($query)){
 tep_db_connect_odbc();
 $listing = tep_db_query_odbc(....);                            
 $doc = tep_db_fetch_array_odbc($listing);
/***
le reste du code mais c'est pas interressant
***/
 tep_db_close_odbc();
}
tep_db_close($connect);
Le code pour la connection mysql:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
function tep_db_connect($server = DB_SERVER_MYSQL, $username = DB_SERVER_USERNAME_MYSQL, $password = DB_SERVER_PASSWORD_MYSQL, $database = DB_DATABASE_MYSQL, $link = 'db_link') {
    global $$link;
    if (USE_PCONNECT_MYSQL == 'true') {
      $$link = mysql_pconnect($server, $username, $password);
    } else {
      $$link = mysql_connect($server, $username, $password);
    }
    if ($$link) mysql_select_db($database);
    return $$link;
  }
 
  function tep_db_close($link = 'db_link') {
    global $$link;
    return mysql_close($$link);
  }
et le code pour la connection via odbc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
function tep_db_connect_odbc($server = DB_SERVER_ODBC, $username = DB_SERVER_USERNAME_ODBC, $password = DB_SERVER_PASSWORD_ODBC, $database = DB_DATABASE_ODBC, $link_odbc = 'db_link_odbc') {
    global $$link_odbc;
 
    $$link_odbc = odbc_pconnect($server, $username, $password);
 if (!$$link_odbc) {
 die("<b>Impossible de se connecter à la base de données (code 01B)</b></br>");
 }
    return $$link_odbc;
  }
 
  function tep_db_close_odbc($link_odbc = 'db_link_odbc') {
    global $$link_odbc;
    return odbc_close($$link_odbc);
  }
et je n'arrive pas a comprendre ou je fais des conneries.
Si quelqu'un comprend pourquoi j'ai ce warning.