Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php+mysql] problem z mysql_query
Forum PHP.pl > Forum > Przedszkole
foxiu
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?
Guest
aha, prawa dostępu do tabeli sprawdzałem, wszystko jest okej. pod phpmyadminem to zapytanie przechodzi normalnie..
mike
Może tak :
  1. <?php
  2. //...
  3. $query1 = &#092;"select Haslo from klienci where Email='\" . $_SESSION[ 'login' ] . \"'\";
  4. //...
  5. ?>
hesus
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
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.