Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MSSQL] wyniki
unnament
post 25.02.2011, 10:54:44
Post #1





Grupa: Zarejestrowani
Postów: 77
Pomógł: 1
Dołączył: 4.06.2006

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


Witam,
Zalozmy, ze pobieram z bazy 5 wynikow,
chcialbym zrobic tak, aby kazdy z tych wynikow byl wpakowany do osobnej zmiennej, abym mogl pozniej je wykorzystac w roznych miejscach kodu.
Jak to zrobic?
Go to the top of the page
+Quote Post
wNogachSpisz
post 25.02.2011, 10:59:27
Post #2





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


  1.  
  2. extract(mssql_fetch_assoc());
  3.  
Go to the top of the page
+Quote Post
unnament
post 25.02.2011, 11:04:05
Post #3





Grupa: Zarejestrowani
Postów: 77
Pomógł: 1
Dołączył: 4.06.2006

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


a mozesz wyjasnic, jak tej funkcji uzyc?
Go to the top of the page
+Quote Post
wNogachSpisz
post 25.02.2011, 11:05:15
Post #4





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


której funkcji?
Go to the top of the page
+Quote Post
unnament
post 25.02.2011, 11:06:20
Post #5





Grupa: Zarejestrowani
Postów: 77
Pomógł: 1
Dołączył: 4.06.2006

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


chodzi mi o to, co dalej zrobic z tym extractem ;P
Go to the top of the page
+Quote Post
wNogachSpisz
post 25.02.2011, 11:07:53
Post #6





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


http://pl2.php.net/manual/en/function.extract.php


  1. <?php
  2.  
  3. $var_array = array("color" => "blue",
  4. "size" => "medium",
  5. "shape" => "sphere");
  6. extract($var_array);
  7.  
  8. echo "$color, $size, $shape\n";
  9.  
  10. ?>


Ten post edytował wNogachSpisz 25.02.2011, 11:09:40
Go to the top of the page
+Quote Post
unnament
post 25.02.2011, 11:23:02
Post #7





Grupa: Zarejestrowani
Postów: 77
Pomógł: 1
Dołączył: 4.06.2006

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


Z twoimi podpowiedziami doszedlem do tego:

  1. $d = mssql_query("SELECT TOP 3 img FROM photos ORDER BY NEWID()");
  2.  
  3. extract(mssql_fetch_assoc($d), EXTR_PREFIX_ALL, 'fab');
  4.  
  5. echo $fab_img;


ale nie wiem jak wyswietlic pozostale dwie zmienne?
Go to the top of the page
+Quote Post
wNogachSpisz
post 25.02.2011, 11:26:47
Post #8





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Musisz zrobić fetch_all().
Nie rozumiem dalczego tak bardzo chcesz ładować to do zmiennych,
akurat w tym konkretnym przypadku takie rozwiązanie nie spowoduje że Twój kod będzie ładniej wyglądał (co wg mnie jest jednynym powodem dla którego warto używać extract)

Zamiast:

$fab_img1
$fab_img2
$fab_img3

zrób tablicę....

Ten post edytował wNogachSpisz 25.02.2011, 11:28:09
Go to the top of the page
+Quote Post
unnament
post 25.02.2011, 11:34:58
Post #9





Grupa: Zarejestrowani
Postów: 77
Pomógł: 1
Dołączył: 4.06.2006

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


Moze byc tablica, tylko prosze o podpowiedz jak ja utworzyc wink.gif
Chce po prostu te 3 wyniki, ktore wybieram z bazy, moc wyswietlic kazde z osobna w dowolnej czesci kodu.
Go to the top of the page
+Quote Post
wNogachSpisz
post 25.02.2011, 11:37:14
Post #10





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Nie wiem czy wklejanie manuala niesie czynnik edukujący...
No ale trudno tongue.gif

  1. <?php
  2. // Send a select query to MSSQL
  3. $query = mssql_query('SELECT [username], [name] FROM [php].[dbo].[userlist]');
  4.  
  5. // Check if there were any records
  6. if (!mssql_num_rows($query)) {
  7. echo 'No records found';
  8. } else {
  9. // Print a nice list of users in the format of:
  10. // * name (username)
  11.  
  12. echo '<ul>';
  13.  
  14. while ($row = mssql_fetch_object($query)) {
  15. echo '<li>' . $row->name . ' (' . $row->username . ')</li>';
  16. }
  17.  
  18. echo '</ul>';
  19. }
  20.  
  21. // Free the query result
  22. mssql_free_result($query);
  23. ?>


Dziwne, nie widze nigdzie funkcji fetch_all...
dla Sqlite i MySQL takie funkcje są..

Ten post edytował wNogachSpisz 25.02.2011, 11:38:06
Go to the top of the page
+Quote Post
unnament
post 25.02.2011, 11:44:08
Post #11





Grupa: Zarejestrowani
Postów: 77
Pomógł: 1
Dołączył: 4.06.2006

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


o takim rozwiazaniu mam pojecia, w przykladzie wklejonym przez Ciebie wszystkie wyniki wyswietlane sa odrazu w jednym miejscu przez petle while.
A ja chce, abym poszczegolne wyniki mogl wyswietlac w dowolnym miejscu.

//////////////

Ok, poradzilem sobie, dla innych szukajacych podobnego rozwiazania z mssql:

  1. $d = mssql_query("SELECT TOP 3 img FROM photos ORDER BY NEWID()");
  2.  
  3. for($i=0;$i<mssql_num_rows($d);++$i)
  4. {
  5. $wynik=mssql_fetch_array($d);
  6.  
  7. $r["$i"] = $wynik['img'];
  8. }


a wyswietlanie poprzez $r['0'], $r['1'] itd...


Ten post edytował unnament 25.02.2011, 11:49:27
Go to the top of the page
+Quote Post
wNogachSpisz
post 25.02.2011, 12:46:40
Post #12





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


No pięknie

Tylko zamiast $r daj jakąś nazwe która cokolwiek oznacza, np. $result
i zamiast $r['1'] pisz $r[1], tak jest szybciej.

Ten post edytował wNogachSpisz 25.02.2011, 12:47:24
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 3.08.2025 - 07:18