2016-04-01 1 views
0

J'essaie d'ajouter des enregistrements à une table sans succès :(et même si l'enregistrement n'est pas ajouté à la DB, il ne renvoie aucune erreur ... Je reçois "Ok" retourné .. .INSERT INTO sqlsrv_query ne fonctionne pas

Je sais que ma connexion fonctionne parce que quand je change ma requête à FETCH informations de cette même table, il fonctionne.

public static function Test($pConn,$pNumEmploye,$pPrenom) 
{ 
    $query = "INSERT INTO [Test] ([NumEmploye],[Prenom]) VALUES(?,?)"; 

    $params = array('12','test'); 


    if(!sqlsrv_query($pConn,$query,$params)) 
    {die(print_r(sqlsrv_errors(), true));} 
    else {return "ok";} 
} 

S'il vous plaît aider avant d'aller fou :)

+0

BTW: Autre chose disant qu'il se connecte à la DB ok: Mon premier argument est défini comme char (5) dans ma base de données, et si je le change en '123456' dans ma requête, alors je reçois une erreur trop longue , mais à portée, pas d'erreur, pas d'entrée –

Répondre

0

Votre chèque de code ne vérifie pas si l'enregistrement a effectivement été importé dans la base de données, cela ne vérifiera que s'il y a erreurs, dans votre cas, il n'y a pas d'erreurs, donc il retournera faux, et donc ok.

if(!sqlsrv_query($pConn,$query,$params)) 
{die(print_r(sqlsrv_errors(), true));} 
else {return "ok";} 

qui signifie que vous devez utiliser quelque chose d'autre, comme la fonction sqlsrv_fetch, dans votre cas sqlsrv_rows_affected ne fonctionnera probablement.