mysql_num_rows

  • Hij controleert niet of een email al in gebruik is. wat doe ik fout? (ja de echo is alleen even een test)


    PHP
    $email  = $_POST['email'];
                            $qemail = ("SELECT `id` FROM `gebruikers` WHERE email='$email'");
                            } else if (mysql_num_rows($qemail) > 0){
                                   echo "hoi";


    Deze fout krijg ik

    PHP
    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/a3285623/public_html/pagina/aanmelden.php on line 21


    terwijl die dingen wel in de database staan. kijk maar


    PHP
    CREATE TABLE `gebruikers` (
      `id` int(4) NOT NULL AUTO_INCREMENT,
      `login` int(15) NOT NULL,
      `wachtwoord` text COLLATE latin1_general_ci NOT NULL,
      `email` varchar(64) COLLATE latin1_general_ci DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=12 ;
  • Guest, wil je besparen op je domeinnamen? (ad)
  • Ja dat van de query ervoor wist ik al, maar in sommige andere scripts staat hij zonder, dus probeerde ik.


    Met query lukt hij ook niet. Zelfde fout


    dit heb ik nu

    PHP
    $email  = mysql_real_escape_string($_POST['email']);
                          $qemail = mysql_query("SELECT `id` FROM `gebruikers` WHERE email='$email'");
                            } else if (mysql_num_rows($qemail) > 0){
                                   echo "hoi";
  • Citaat van eeyk

    en als je `email`='".$email."' doet?


    Is toch hetzelfde alleen dit "netter"?


    Alex met mysql_error zelfde fout

    PHP
    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/a3285623/public_html/pagina/aanmelden.php on line 19


    PHP
    $email  = mysql_real_escape_string($_POST['email']);
                          $qemail = mysql_query("SELECT `id` FROM `gebruikers` WHERE email='".$email."'");
                            } else if (mysql_num_rows($qemail) > 0 or die(mysql_error())){
                                   echo "hoi";


    zal het vast melden, de if wordt wel afgesloten hoor

  • PHP
    $email  = mysql_real_escape_string($_POST['email']);
                          $qemail = mysql_query("SELECT `id` FROM `gebruikers` WHERE email='".$email."'") or die(mysql_error());
                            } else if (mysql_num_rows($qemail) > 0 ){
                                   echo "hoi";


    zelfde fout

  • als je alleen SELECT id doet zal je een error krijgen om dat je dan alleen resource terug krijgt met een "array" erin waar alleen het id wordt meegegeven niet de rest aangezien je die niet mee selecteert (vanwege daar de SELECT). als je SELECT * FROM doet selecteer je alles van die table row.


    en als je SELECT id,email FROM dan zal hij het beter doen :)

  • Maar zo selecteert hij alle id's hij moet ze alleen selecteren WHERE email=email dus dan klopt die query toch?


    nu heb ik email ook bij select en krijg ik nog een fout.
    Heel het script:


Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!