Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MSSQL][PHP] połączenie i wykonanie zapytania - warning
--Venus--
post
Post #1





Goście







Witam,

mam do przerobienia mój stary projekt oparty o mssql. Na serwerze klienta jest teraz sqlExpress i prosty copy paste nie działa ( pdo nie chce ze mną rozmawiać )
napisałem coś takiego
  1. function connect( $query )
  2. {
  3. //print $query; /only for debug
  4. $SQL_user = "user";
  5. $SQL_password = "pass";
  6. $SQL_database = "my_db";
  7.  
  8. $link = mssql_connect('my_server', $SQL_user, $SQL_password);
  9. if( !$link )
  10. {
  11. print "Error - Connecting to database failed";
  12. }
  13. else
  14. {
  15. if( !mssql_select_db($SQL_database, $link) )
  16. {
  17. print "Couldn't use database";
  18. }
  19. else
  20. {
  21. $result = mssql_query ( $query ) or
  22. die ("Error: Couldn't read from Data Base");
  23. mssql_close( $link );
  24. }
  25. }
  26. return $result;
  27. }


i dalej np.

  1. $result = connect( 'jakis tam select' );
  2. print_r($result); // tutaj mam Resource id #5 i to z tego co pamiętam jest OK
  3. while($row = mssql_fetch_array($result))
  4. {
  5. echo $row[0]; // tutaj dostaję Warning: mssql_fetch_array(): 5 is not a valid MS SQL-result resource in C:\wamp\www\orderDisPatcher.php on line 23
  6. }

dawno nie używałem tego typu połączenia, czy tu widzicie coś czeskiego? albo coś?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
busterek
post
Post #2





Grupa: Zarejestrowani
Postów: 109
Pomógł: 0
Dołączył: 30.07.2006
Skąd: Łódź

Ostrzeżenie: (0%)
-----


bostaf ale connect jest funkcją, która zawiera w sobie mssql_query. Resource jest zwracany poprawnie. Mnie ciekawi, czy po wykonaniu mssql_fetch_array coś jest w zmiennej $row.
Go to the top of the page
+Quote Post
bostaf
post
Post #3





Grupa: Zarejestrowani
Postów: 374
Pomógł: 79
Dołączył: 6.04.2010
Skąd: Ostrów Wielkopolski

Ostrzeżenie: (0%)
-----


@busterek
Cytat(busterek @ 3.01.2014, 11:15:29 ) *
bostaf ale connect jest funkcją, która zawiera w sobie mssql_query. Resource jest zwracany poprawnie. Mnie ciekawi, czy po wykonaniu mssql_fetch_array coś jest w zmiennej $row.

Racja racja, przegapiłem to, dzięki za zwrócenie uwagi. Wywalę poprzedniego posta, żeby nie wprowadzać zamieszania.
Tak czy inaczej zastanawia mnie ten komunikat o niewłaściwym zasobie, zwłaszcza, że tamta funkcja wygląda poprawnie, i wcześniej rzuciłaby komunikatami o błędach niż wykonała niepoprawne zapytanie.
Też jestem ciekaw co będzie w $row, ale podejrzewam, że nic - skoro mssql_fetch_array() nie dostała poprawnego argumentu, to nie może zwrócić poprawnego wyniku.

@-Venus- to trochę ślepy strzał, ale spróbuj wyrzucić z funkcji connect wiersz 24: "mssql_close( $link );". Może to zamknięcie połączenia zbyt wcześnie w jakiś sposób nie pozwala zwrócić funkcji connect zmiennej $result. Nie wiem, warto spróbować.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 10:18