OVH Cloud OVH Cloud

Probleme avec le driver mssql

1 réponse
Avatar
Guillaume
Bonjour,
J ai un probleme lorsque j utilise le driver mssql :
quand je fais une update/insert ou delete sur une table et que je veux faire
une redirection apres avec la fonction 'header' j ai le message d erreur
suivant :

CGI Error
The specified CGI application misbehaved by not returning a complete set of
HTTP headers. The headers it did return are:

Le plus bizard est que si je fais un select ou que j utilise le driver mysql
je n ai pas ce probleme. En plus si avec mssql je fais un update sur une
ligne inexistante je n ai pas non plus le probleme.

Voila un exemple de code qui plante :

<?php
$conn = mssql_connect($server, $user, $password);
mssql_select_db($db);
$result = mssql_query("UPDATE Users SET usFirstName = 'Guillaume' WHERE usId
= 20");
mssql_close();

header("Location: $redirect");
exit();
?>

Quand j appel cette page, la base de donnees est bien mise a jour, le
navigateur est bien redirige vers la page $redirect (je vois l adresse dans
la barre de navigation) mais j ai le message d erreur.

Ma config :

os : windows 2k server sp3
web: iis 5.0
php: 4.3.2
db : sql server 2000 entreprise sp2

Quelqu un connait la cause du probleme et/ou la solution ? (a part utiliser
mysql :)

Merci,
Guillaume

1 réponse

Avatar
John GALLET
Bonjour,

quand je fais une update/insert ou delete sur une table et que je veux
faire

une redirection apres avec la fonction 'header' j ai le message d erreur
suivant :


Et donc si tu vires dans l'exemple de code donné la partie d'interaction
avec le SQL-Serveur pas de problèmes ? Marrant ça comme bug.

$conn = mssql_connect($server, $user, $password);
mssql_select_db($db);
$result = mssql_query("UPDATE Users SET usFirstName = 'Guillaume' WHERE
usId

= 20");


Et si ici tu vérifies le résultat il y a quoi ?

mssql_close();


Et en forçant à mssql_close($conn); ?

header("Location: $redirect");
exit();
Fatiguant. Au fait il sort d'où $redirect ?


Quelqu un connait la cause du probleme et/ou la solution ? (a part utiliser
mysql :)
La cause non. Comment s'en sortir oui : coder proprement. Fais une recherche

sur http://groups.google.com en mettant comme mots clefs mon adresse email
header et location.

a++
JG