Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Zmienna nazwa pola w array()
Maxie
post 6.04.2013, 23:40:52
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 19.10.2011

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


Witam. Zrobiłem ostatnio sobie dwie klasy, które miały mi pomóc ogarnąć tą ilość kodu źródłowego. Są to klasy user i db. db działa w 100% poprawnie. Do user jednak potrzebuję wskazówki. Chciałem zrobić coś w tym stylu:
  1. public static function info($id){
  2. if($id == NULL){
  3. $id = $_SESSION['user']['ID'];
  4. }
  5. $result = db::assoc(db::select("SELECT * FROM `User` WHERE `ID` = '".$id."' "));
  6. while($record = db::assoc(db::select("SELECT * FROM `UserOptions` WHERE `UserID` = '".$id."' "))){
  7. $type = $record['Type'];
  8. $result[$type] = $record['Value'];
  9. }
  10. return $result;
  11. }

Teoretycznie powinno działać. Wszystko jest napisane poprawnie, pojedyncze linie z osobna także wydają się być logiczne i spójne ze sobą. Lecz jednak coś nie działa. Nie mogę dokładnie sprawdzić co ponieważ strona nie ładuję się po dodaniu odniesienia do tej funkcji z klasy user i wywala błąd 504 bad gateway Domyślam się, że to przez linię:
  1. $result[$type] = $record['Value'];

Wiecie może jak naprawić ten skrypt?
Z góry dziękuję za odpowiedzi i pozdrawiam!

Ten post edytował Maxie 6.04.2013, 23:41:29
Go to the top of the page
+Quote Post
Posio
post 7.04.2013, 15:23:56
Post #2





Grupa: Zarejestrowani
Postów: 417
Pomógł: 44
Dołączył: 23.06.2011

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


Jeśli wywala Ci 504 to pomyśl o pętli. ew. o innej czesci kodu. Do tablicy masz przypisane ok.

Ten post edytował Posio 7.04.2013, 15:30:32
Go to the top of the page
+Quote Post
nospor
post 8.04.2013, 10:01:03
Post #3





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




while($record = db::assoc(db::select("SELECT * FROM `UserOptions` WHERE `UserID` = '".$id."' "))){
W tej linijce się zapętlasz.... do db:assoc masz przekaz wynik select zrobiony przed pętlą a nie w pętli, bo tak jak teraz ciągle i ciągle wykonujesz to samo zapytanie...


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

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: 16.06.2025 - 19:03