Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php, sql] Problem z zestawem rekordow, Nauka z ksiazka
iMax
post 29.12.2007, 14:28:29
Post #1





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 4.07.2006

Ostrzeżenie: (10%)
X----


Witam. Postanowilem sie troche pouczyc PHP, kozystam z Macromedia Dreamweaver 8 i tez wlasnie kupilem ksiazke "Macromedia Dreamweaver 8 z ASP, PHP i ColdFusion, Oficjalny podrecznik". Wszystko szlo gladziutko, az do lekcji 10. Mialem uzyc polecania SQL JOIN zamiast WHERE, bo podobno jest lepsze. W programie sa specjlane opcje do kodu, zapytan itp, ale trzeba tez samemu wpisywac, a to akurat wykracza poza program, wiec musze recznie. No i wpisalem to co mi kazali:
U mnie to wyglada tak:
  1. SELECT *
  2. FROM tbl_tours INNER JOIN tbl_country ON tbl_country.countryID=tbl_tours.country
  3. ORDER BY tbl_country.countryName

do lacznia sie z baza uzywam pliku, ktorego zawartosc wyglada tak:
  1. <?php
  2. # FileName="Connection_php_mysql.htm"
  3. # Type="MYSQL"
  4. # HTTP="true"
  5. $hostname_conn_newland = "localhost";
  6. $database_conn_newland = "newland_tours";
  7. $username_conn_newland = "root";
  8. $password_conn_newland = "";
  9. $conn_newland = mysql_pconnect($hostname_conn_newland, $username_conn_newland, $password_conn_newland) or trigger_error(mysql_error(),E_USER_ERROR); 
  10. ?>

Blad pewnie ma zwiazek z zapytaniem SQL wiec dodalem to tutaj, abyscie sprawdzili, bo autorzy mogli sie machnac w ksiazce, no chyba ze co innego. To blokuje mi dalsza nauke.
Go to the top of the page
+Quote Post
JaRoPHP
post 29.12.2007, 14:35:33
Post #2





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

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


Cytat(iMax @ 29.12.2007, 14:28:29 ) *
Mialem uzyc polecania SQL JOIN zamiast WHERE, bo podobno jest lepsze.
Gdzie to wyczytałeś? Pomiędzy JOIN i WHERE jest spora różnica...

Twoje zapytanie SQL-a jest poprawne składniowo (zakładam, że nazwy kolumn tabelach się nie duplikują).

I moje pytanie - jaki błąd się pojawia? Nic nie napisałeś - a wróżek brak smile.gif.

Przenoszę na Przedszkole.


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
Go to the top of the page
+Quote Post
iMax
post 29.12.2007, 14:43:57
Post #3





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 4.07.2006

Ostrzeżenie: (10%)
X----


Bład programu:

DataSources
An unidentifed error has occurred.
Go to the top of the page
+Quote Post
nevt
post 29.12.2007, 15:05:05
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


pytania podstawowe: jaki masz serwer www? jaką masz wersję PHP? jaką masz wersję serwera MySQL ? czy na pewno wszystko jest właściwie zainstalowane / skonfigurowane ?

jeżeli tak...
spóbuj użyć mysql_connect() zamiast mysql_pconnect() - ta druga funkcja wymaga odpowiedniej konfiguracji systemu i nie zawsze działa prawidłowo...

btw... po co uzywasz takiich horrendalnie długich nazw zmiennych questionmark.gif szlifujesz swój skill używania keyboard'u questionmark.gif winksmiley.jpg w każdym razie nie podnoszą czytelności kodu, wręcz przeciwnie...

i jeszcze jedno ... nie używaj " (cudzysłów) jako ogranicznika zwykłych łańcuchów znakowych... właściwym symbolem jest ' (apostrof)...


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

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post
iMax
post 29.12.2007, 15:21:11
Post #5





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 4.07.2006

Ostrzeżenie: (10%)
X----


MySql: MySQL - 5.0.21
PHP: PHP Version 5.1.4

Wszystko elegancko skonfigurowane. Zmiana na connect z pconnect nie pomogla.
Wczesniej rownie uzywalem wielu polecen SQL, ale tylko na tym wyskakuje blad.
Pisze jeszcze, ze taki kod jest identyczny z tym co wyzej napisalem
  1. SELECT *
  2. FROM tbl_tours, tbl_country
  3. WHERE tbl_country.countryID=tbl_tours.country
  4. ORDER BY tbl_country.countryName

ale po zamianie tamtego na ten wyskakuje ten sam blad.
Moze to jest cos od strony bazy?
Go to the top of the page
+Quote Post
JaRoPHP
post 29.12.2007, 15:29:05
Post #6





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

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


Napisz, jak nazywają się kolumny w owych tabelach.


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
Go to the top of the page
+Quote Post
iMax
post 29.12.2007, 15:38:02
Post #7





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 4.07.2006

Ostrzeżenie: (10%)
X----


O to ci chodzi?
Zrobilem screeny:
Go to the top of the page
+Quote Post
JaRoPHP
post 29.12.2007, 16:22:10
Post #8





Grupa: Zarejestrowani
Postów: 675
Pomógł: 15
Dołączył: 7.11.2004
Skąd: Katowice

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


Wykonaj poniższe zapytanie w phpMyAdmin-ie (i pochwal się wynikiem) - wtedy będzie jasność, czy jest błąd po stronie zapytania, czy trzeba szukać dalej.
  1. SELECT *
  2. FROM tbl_tours INNER JOIN tbl_country ON tbl_country.countryID=tbl_tours.country
  3. ORDER BY tbl_country.countryName


--------------------
Kto pyta, nie błądzi...
Kto zbłądził, ten pyta...
Go to the top of the page
+Quote Post
iMax
post 29.12.2007, 16:34:20
Post #9





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 4.07.2006

Ostrzeżenie: (10%)
X----


  1. SELECT *
  2. FROM tbl_tours INNER JOIN tbl_country ON tbl_country.countryID = tbl_tours.country
  3. ORDER BY tbl_country.countryName
  4. LIMIT 0, 30

Wszystko w najmniejszym porzadku - wynik pozytywny, bez bledow.

Ten post edytował iMax 29.12.2007, 16:34:57
Go to the top of the page
+Quote Post
nevt
post 29.12.2007, 16:40:37
Post #10





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


a pokaż jak wstawiasz to zapytanie SQL w swoim kodzie... samo zapytanie jest poprawne, więc podejrzewam, że popełniłeś jakiś inny błąd...


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

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post
iMax
post 29.12.2007, 16:42:40
Post #11





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 4.07.2006

Ostrzeżenie: (10%)
X----


  1. <?php
  2. mysql_select_db($database_conn_newland, $conn_newland);
  3. $query_rs_tourDetail = "SELECT * FROM tbl_tours INNER JOIN tbl_country ON tbl_country.countryID = tbl_tours.country ORDER BY tbl_country.countryName";
  4. $rs_tourDetail = mysql_query($query_rs_tourDetail, $conn_newland) or die(mysql_error());
  5. $row_rs_tourDetail = mysql_fetch_assoc($rs_tourDetail);
  6. $totalRows_rs_tourDetail = mysql_num_rows($rs_tourDetail);
  7. ?>
Go to the top of the page
+Quote Post
nevt
post 29.12.2007, 17:23:46
Post #12





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


poddaje się - kod wygląda na poprawny... błąd jest chyba gdzie indziej - może jakaś literówka ? te wieloczłonowe nazwy ciężko się czyta...

dla spokoju sumienia wymieniłbym jeszcze cudzysłowy na apostrofy - a nuż masz w tym środowsku zdefiniowaną jakąś stałą która pokrywa się z którymś członem zapytania... czyli:
  1. <?php
  2. $query_rs_tourDetail = 'SELECT * FROM tbl_tours INNER JOIN tbl_country ON tbl_country.countryID=tbl_tour
    s.country ORDER BY tbl_country.countryName;'
    ;
  3. ?>


... a przy okazji... jak skopiowałem twój kod, to niektóre spacje były "twardymi spacjami"... przyjżyj się temu...


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

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post
iMax
post 29.12.2007, 18:25:26
Post #13





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 4.07.2006

Ostrzeżenie: (10%)
X----


Siedze i siedze nad tym, juz ktoras godzine... Wydaje mi sie ze to moze byc cos z programem, znalazlem takie cos:
http://kb.adobe.com/selfservice/viewConten...redeployScripts
i wlasnie sprawdzam...


Nic... Za nic nie umiem tego rozwiazac. Macie jeszcze jakies propozycje?


Po dlugich meczarniach, testach, edycjach itp moge stwierdzic ze blad lezy tylko i wylacznie po stronie programu. Nie bede juz tego walkowal dalej (o ile nie okaze sie w dalszej czesci ksiazki niezbede). Bez tego musze poswiecic czas na wprowadzanie kodu, ale przezyje...

Ten post edytował iMax 29.12.2007, 22:09:14
Go to the top of the page
+Quote Post
yaotzin
post 29.12.2007, 22:12:04
Post #14





Grupa: Zarejestrowani
Postów: 157
Pomógł: 0
Dołączył: 12.02.2007
Skąd: Zielona Góra

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


Czego używasz jako serwera questionmark.gif tzn chodzi mi o LAMP (Linux, Apache, MySQL, PHP), jakiejś gotowej paczki czy może sam konfigurowałeś wszystko. Durga rzecz posprawdzaj zmienne, może gdzieś któraś ci się nie pokrywa. Bo błąd jest związany z pobieraniem danych ze źródła. Spróbuj przeanalizować kod z książką. Być może masz błąd w samej konfiguracji serwera...


--------------------
------
Per Aspera Ad Astra
Go to the top of the page
+Quote Post
iMax
post 30.12.2007, 13:18:08
Post #15





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 4.07.2006

Ostrzeżenie: (10%)
X----


Nie, nie, serwer i wszystko jest ok. Chodzi o to ze dreamweaver w panelu z boku wyswietla zawsze kolumny z tabel, a dzieki temu moge sobie szybko je poprzeciagac na srodkowa czesc strony czyli okno widoku, co ulatwia mi prace, bo nie musze pisac tego kodu. No ale niestety wystepuje blad programu i musze go wpisywac, ale na szczescie tylko przy tego typu poleceniach SQL. Sam skrypt poza programem w przegladarce chodzi bez zadnych zarzutow, to tylko wina programu.
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: 31.07.2025 - 10:47