Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php+mysql] problem z mysql_query
-foxiu-
post
Post #1





Goście







mam bardzo dziwny problem.

Kod
//costam

    $query = "select Email from klienci where Email = '" . $_SESSION['login'] . "'";
    print $query . "<br>";
    $result = mysql_query("SELECT Email FROM klienci WHERE Email='foxiu'");
    if (!($result)) { print "Nie ma takiego usera!!"; print mysql_fetch_array($result); }
    else {
        $query1 = "select Haslo from klienci where Email=" . $_SESSION['login'];
        $result1 = mysql_query($query1);
        if (mysql_fetch_array($result1, MYSQL_ASSOC) == $_SESSION['passwd']) {
      $_SESSION['zalogowany'] = true;
      $_SESSION['udanelogowanie'] = true;
        }
    }


//cośtam


a efekt tego jest taki:

select Email from klienci where Email = 'foxiu'
Nie ma takiego usera!!
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\sklep\engine\login1.php on line 25

problem jest dziwny, ponieważ w całej tabeli klienci mam tylko jeden rekord, a polu Email jest foxiu...

dodam jeszcze ze w iinym kawałku kodu zapytanie typu 'select * from producenci' przechodzi, a juz 'select * from producenci where Nazwa='Abus' ' nie przechodzi, pomimo istnienia w tej tabeli producenta o nazwie Abus. wie ktoś co jest grane?
Go to the top of the page
+Quote Post
-Guest-
post
Post #2





Goście







aha, prawa dostępu do tabeli sprawdzałem, wszystko jest okej. pod phpmyadminem to zapytanie przechodzi normalnie..
Go to the top of the page
+Quote Post
mike
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Może tak :
  1. <?php
  2. //...
  3. $query1 = &#092;"select Haslo from klienci where Email='\" . $_SESSION[ 'login' ] . \"'\";
  4. //...
  5. ?>
Go to the top of the page
+Quote Post
hesus
post
Post #4





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 24.03.2005

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


1. Nie jestem przekonany, czy w przypadku braku wyników zapytania SELECT funkcja mysql_query zwraca wartość false. Spróbuj liczbę rekordów wyniku sprawdzić tak:
  1. <?php
  2.  
  3. if (mysql_num_rows($result)!=0) ...
  4.  
  5. ?>


2. Linia
  1. <?php
  2.  
  3.  
  4. ?>

wydaje mi się trochę bez sensu, zważywszy na fakt, że jest ona wywoływana tylko dla $result = false;

3. Zapomniałeś zamknąć wartość tekstową w uszach, w zapytaniu, co zasygnalizował Ci już mike_mech.

4. Zapytanie
  1. <?php
  2.  
  3. $result=mysql_query('select * from producenci')
  4.  
  5. ?>

naturalnie przejdzie, natomiast
  1. <?php
  2.  
  3. $result=mysql_query('select * from producenci where Nazwa='Abus' ');
  4.  
  5. ?>

nie ma szans powodzenia, ze względu na uszy. Powinno być
  1. <?php
  2.  
  3. $result=mysql_query(&#092;"select * from producenci where Nazwa='Abus' \");
  4.  
  5. ?>


Może jednak problem nie jest taki dziwny, jak Ci się początkowo wydawało smile.gif
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 Aktualny czas: 22.08.2025 - 08:36