PHP / MySQL Fehler Resource id #11

Dieses Thema PHP / MySQL Fehler Resource id #11 im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von AlexHofbauer, 25. Aug. 2005.

Thema: PHP / MySQL Fehler Resource id #11 Hi. Ich will überprüfen ob es einen Datensatz in einer Tabelle gibt oder nicht. Ich hab das schon mal gemacht und...

  1. Hi.

    Ich will überprüfen ob es einen Datensatz in einer Tabelle gibt oder nicht. Ich hab das schon mal gemacht und da funzt es auch, aber bei meiner neuen Datei geht es nicht und ich finde den Fehler nicht! Vielleicht sieht einer von euch den Fehler :
    Code:
    <?php
    
                include (cgi-bin/db_conf.php);
                $link = mysql_connect( $host, $username, $password);
                if (! $link)
                die (Keine Verbindung zur Datenbank);
                mysql_select_db( $database, $link)
                or die (Konnte $database nicht öffnen);
                $ergebnis = mysql_query( SELECT * FROM artikel;);
                $anzahl = mysql_num_rows($ergebnis);
    ?>
    
    <?php
                         if ($anzahl == 0)
                         print <h3 align=\center\>Keinen Artikel gefunden</h3>;
                         else
                         {
                         print Artikel gefunden;
                         }
                    ?>
    
    
    Er sagt bei Anzahl immer : Resource id #11. Kann mir das einer mal erklären,

    Danke
     
  2. Code:
    <?php
    include (cgi-bin/db_conf.php);
    if(!@mysql_connect( $host, $username, $password)) die (Keine Verbindung zur Datenbank);
    if(!@mysql_select_db( $database, $link)) die (Konnte $database nicht öffnen);
    $res = @mysql_query( SELECT count( id ) AS c FROM artikel;);
    $anzahl = @mysql_fetch_array($ergebnis);
    if (!$anzahl[0] || $anzahl[0] == 0)
    	print <h3 align=\center\>Keinen Artikel gefunden</h3>;
    else
    	print $anzahl[0]. Artikel gefunden;
    ?>
    
    Wenn kein Feld id da ist, nimmste irgendein anderes => count( id )
     
  3. und wie mach ich jetzt dann weiter, wenn ich die gefundenen Artikel ausgeben will?
    Bis jetzt hatte ich das so gemacht :

    Code:
    <?php
                         if ($anzahl == 0)
                         print <h3 align=\center\>Keinen Artikel gefunden</h3>;
                         else
                         {
                          print <center>;
                          print <form action=\artikel.php\ method=\POST\>;
                          print <select name=\artikel\ size=\1\>;
    
                          while ( $datensatz = mysql_fetch_array( $ergebnis ) )
                          {
                           if ($_POST['suchbedgiff'] == $datensatz['suchbegriff'])
                           {
                              print <option selected>$datensatz[suchbegriff]</option>;
                           }
                           else
                           {
                               print <option>$datensatz[suchbegriff]</option>;
                           }
                          }
                          print </select>;
                          print   <input type=\submit\ name=\submit\ value=\Anzeigen\>;
                          print </form>;
                          print <br>;
                          print </center>;
                         }
    ?>
    
    Danke
     
  4. Code:
    <?php
    include (cgi-bin/db_conf.php);
    if(!@mysql_connect( $host, $username, $password)) die (Keine Verbindung zur Datenbank);
    if(!mysql_select_db( $database, $link)) die (Konnte $database nicht öffnen);
    $res = mysql_query( SELECT * FROM artikel);
    $num = @mysql_num_rows($res);
    if (!$num || $num == 0)
    	echo <h3 align='center'>Keinen Artikel gefunden</h3>;
    else {
    	while ( $row = mysql_fetch_array( $res ) ) {
    		$s  = ($row['suchbegriff'] == $_POST['suchbegriff']) ?->selected' : ;
    		$opt .=<option .$s.>.$row['suchbegriff'].</option>;
    	}
    	$form = <center>
    		     <form action='artikel.php' method='POST'>
    			  <select name='artikel' size='1'>
    			   .$opt.
    			  </select>
    			    
    			  <input type='submit' name='submit' value='Anzeigen'>
    			 </form>
    			 <br>
    		    </center>;
    	echo $form;
    }	
    ?>
    
    Die Frage war so aber nicht gestellt ;) ;)
     
  5. ::) Sorry Conny. Wollte die Frage eigentlich so stellen.

    Dein Code funzt irgendwie nicht. Er sagt er kann die Datenbank nicht öffnen. So funzt er :
    Code:
    <?php
    
         $link = mysql_connect( $host, $username, $password);
         if (! $link)
         die (Keine Verbindung zur Datenbank);
         mysql_select_db( $database, $link)
         or die (Konnte $database nicht öffnen);
         $res = mysql_query( SELECT * FROM artikel WHERE suchbegriff LIKE->$suchbegriff');
         $num = @mysql_num_rows($res);
    
    ?>
    
    <?php
               print Anzahl : $num<br>;
               print Suchbegriff : $suchbegriff<br>;
    
               if (!$num || $num == 0)
               print <h3 align=\center\>Keinen Artikel mit dem Suchbegriff $suchbegriff gefunden</h3>;
               else
               {
               print Artikel gefunden;
               }
            ?>
    
    Aber jetzt zeigt er mir bei Anzahl 14 an, obwohl sich kein Artikel in der Datenbank befindet. Ich blick langsam nicht mehr durch!
     
  6. OK, ich hab das mal so in etwa nachgebaut ;)
    Das Bsp. funktioniert deftinitiv ;)

    Code:
    <?php
    #include (cgi-bin/db_conf.php);
    $host = localhost;
    $username = ;
    $password = ;
    $database = testdb;
    if(!@mysql_connect( $host, $username, $password)) die (Keine Verbindung zur Datenbank);
    if(!mysql_select_db( $database)) die (Konnte $database nicht öffnen);
    $res = mysql_query( SELECT id, artikel FROM artikel ORDER by artikel ASC);
    $num = @mysql_num_rows($res);
    if (!$num || $num == 0)
    	echo <h3 align='center'>Keinen Artikel gefunden</h3>;
    else {
     while ( $row = mysql_fetch_array( $res ) ) {
      $s  = ($row[id] == $_POST[artikel]) ?->selected' : ;
      $opt .= <option value='.$row[id].' .$s.>.$row[artikel].</option>;
     }
     # print_r($_POST);
     $form = <center>
         <form action='artikel.php' method='POST'>
    	  <select name='artikel' size='1'>
    	   .$opt.
    	  </select>
    	    
    	  <input type='submit' name='submit' value='Anzeigen'>
    	 </form>
         <br>
         </center>;
     echo $form;
    }
    ?>
    
    Jo, das lag daran, das du in deinem Quellcode mysql_select_db($database, $link) geschrieben hattest. Hatte wohl irgendwie das $link übersehen, wird in meinem Bsp. gar net gebraucht ;) ;)

    Habs mit dieser Tabelle getestet:
    Code:
    -- 
    -- Tabellenstruktur für Tabelle `artikel`
    -- 
    
    CREATE TABLE `artikel` (
     `id` int(11) NOT NULL auto_increment,
     `artikel` varchar(50) NOT NULL default->',
     PRIMARY KEY (`id`)
    ) ;
    
    -- 
    -- Daten für Tabelle `artikel`
    -- 
    
    INSERT INTO `artikel` VALUES (1,->Butter');
    INSERT INTO `artikel` VALUES (2,->Milch');
    INSERT INTO `artikel` VALUES (3,->Brot');
    INSERT INTO `artikel` VALUES (4,->Eier');
    INSERT INTO `artikel` VALUES (5,->Käse');
    INSERT INTO `artikel` VALUES (6,->Wurst');
    INSERT INTO `artikel` VALUES (7,->Salat');
    INSERT INTO `artikel` VALUES (8,->Fleisch');
    INSERT INTO `artikel` VALUES (9,->Schokolade');
    INSERT INTO `artikel` VALUES (10,->Saft');
    
     
Die Seite wird geladen...

PHP / MySQL Fehler Resource id #11 - Ähnliche Themen

Forum Datum
php mysql Fehler: 1064 Webentwicklung, Hosting & Programmierung 18. Aug. 2006
Fehler in MySQL Abfrage ? Windows XP Forum 6. Mai 2005
Darstellungsfehler einer mySQL Tabelle nach e-Mail Versand Windows XP Forum 6. März 2005
php fehler - Warning: mysql_fetch_array() Webentwicklung, Hosting & Programmierung 5. Okt. 2003
Versionsprobleme mit der "mysql.dll" (32 und 64bit) Windows 7 Forum 28. Juni 2016