Błąd przy wczytywaniu danych z mysql


(Konradnie2) #1

(pain3hp) #2

a nie łatwiej dać komunikat błędu?? ehh


(Konradnie2) #3

Ale nie chodzi o to że wyskakuje jakieś okienko czy coś tylko w tym miejscu gdzie powinno być imię to jest ten napis:

Resource id #4

s:


(kubut) #4

A ta zmienna nie powinna być tablicą? Próbowałeś wyświetlić tą zmienną z indeksem tablicy?

P.S

Czemu w warunkach używasz $zmienna!=" "?

Nie łatwiej empty($zmienna) ? Lub isset($zmienna)


(Darom82) #5

kongi teraz juz sie nie uzywa czegos takiego jak:

[/code]

To jest już daleka przeszłość :slight_smile: Teraz używa się bardziej nowoczesnych metod stosowania znaczników.


(Konradnie2) #6

Chodziło ci o to?

<?php 

require('config.php');


$pokaz[]=mysql_query("SELECT imie FROM `user`");

echo($pokaz[]);


?>

Teraz to w ogóle strony nie ma jest białe tło.

Jak wiesz jak można to zrobić to napisz.


(Mbocian 94) #7

Po pierwsze, uchwyt połączenia w zmiennej:

$polaczenie=mysql_connect(parametry);

Następnie do zmiennej $query, polecenie z kwerendą SQL (polecenie mysql_query). Nie może to być zmienna tablicowa, to tzw zmienna zasobu (resource variable) o ile wiem, wiec nie mozna jej po prostu echo'wać. Potem pętla while, która zapisuje w tablicy z wynikami, kolejne rekordy pobrane z kwerendy.

$i=0;

while($row=mysql_fetch_assoc($query)){

$wyniki[$i]=$row;

$i++;

}

I masz tablicę z rekordami, potem ją dajesz do pętli foreach, aby ją przetworzył.

http://lmgtfy.com/?q=php+mysql+wy%C5%9Bwietlanie+rekord%C3%B3w - przydatne :slight_smile:


(Konradnie2) #8

O to mi chodziło tylko ze o pętlach to ja nie wiem nic.

To co napisałeś wyżej to wyświetli dane??


(Mbocian 94) #9

Tylko zapisze je w zmiennej tablicowej $wyniki. Jeżeli byś chciał wyświetlić jeden rekord, wówczas możesz wpisać

$wyniki[numer_kolejny_w_petli]['nazwa_kolumny']

// czyli np

echo $wyniki[0]['imie'];

Ofc możesz użyć pętli foreach, żeby wyświetlić wszystkie rekordy, ale będziesz musiał zagnieździć dwie pętle, gdyż to jest tablica dwuwymiarowa.


(Konradnie2) #10

Wielkie dzięki.

A jak będę chciał wyświetlić jakieś dane z innej tabeli i danych będzie np 5 to jak je wyświetlić??


(Mbocian 94) #11

Jak mówiłem, użyj pętli foreach :wink: Jak chcesz to napiszę Tobie skrypt na privie, tylko napisz jak wygląda tabela :wink:


(Konradnie2) #12

Mam to:

<?php 

require('config.php');


$query=mysql_query("SELECT Wiedza FROM `user` WHERE login = '$konta'");


$i=0;

while($row=mysql_fetch_assoc($query))

{

$wyniki[$i]=$row;

$i++;

}


echo $wyniki[0]['Wiedza'];


?>

I kilka danych mi wyświetla ładnie a jak użyje tego więcej razy to mi niektóre pokazuje a niektóre nie.

Mam w tabeli "user" pola "imie" , "Wiedza" , "Spostrzegawczosć" i "Szybkość" Wyświetla mi imie i wiedzę a reszty nie.

Czego to jest wina??

Czy za każdym razem muszę zmieniać $i na jakąś inną czy nie??

JUŻ SOBIE PORADZIŁEM.

Powiedz mi tylko jeszcze 1 rzecz.

Mam przyciski

i chcę żeby po naciśnięciu w jakiś została zwiększona dana wartość o 1 jeśli np ma wystarczająco wiedzy.

Jak nie wiesz o co mi chodzi to napisz na pw to ci wytłumaczę może będziesz umiał mi pomóc.