Überprüfen, ob ein Eintrag in dem Feld ist

schultze

Mitglied
Und zwar möchte ich überprüfen ob in einem Feld schon ein Wert vorhanden ist.

PHP:
// Abfrage ob User schon einen Platz gewählt hat
  $abfrage = "SELECT * FROM teilnehmer WHERE uid = '$uid'";
  $ergebnis = mysql_query($abfrage);
  while($row = mysql_fetch_object($ergebnis))
    {
    $ergebnis = $row->sitzplatz;
    }

// Hier ist das Probelm... 	
IF ($ergebnis == '%')
	{
		// Sitzplatz wird in Datenbank eingetragen
		$aendern = "UPDATE teilnehmer Set sitzplatz = '$sitzplatz' WHERE uid = '$uid'";
		$update = mysql_query($aendern);
		
		echo "Der Sitzplatz $sitzplatz wurde für dich reserviert! Diese Reservierung ist unverbindlich und kann jederzeit vom Veranstalter rückgängig gemacht werden!";
	}
	else
	{
		echo "Du hast bereits einen Sitzplatz gewählt! Pro Teilnehmer kann nur ein Platz reserviert werden.";
	}
 
nun ich habe das mal übernomen und zwar so:

PHP:
function bildVorhanden( $id )
    	{
    	global $link;
    	$query = "SELECT * FROM members WHERE id='$id'";
    	$ergebnis = mysql_query( $query, $link );
    	while($row = mysql_fetch_array($ergebnis))
    		{
    		   $ergebnis2 = $row[src];
    		  }
    	if ($ergebnis != '')
    		{
    		echo "kein Bild vorhanden";
    		   }
    	else
    		{
    		echo "Bild vorhanden.";
    		}
    	}

nun wird aber jedesmal "kein Bild vohanden" augegeben, obwoll es bei den einen "Bild vorhanden" ausgeben sollte.

was mach ich falsch?
 
Zuletzt bearbeitet:
hi dempf,
$ergebnis ist ja ein verweis aud einen mysql_query.
es sollte wohl eher so heißen:
PHP:
if (mysql_result($ergebnis,0,'src') = '') {
  echo "kein Bild vorhanden";
}
ein weiterer fehler war bei != das muss natürlich = heißen.

wenn du keine anderen daten von dem query haben willst, sondern nur wissen willst, ob der eintrag in src ungleich "" ist, dann kannst du das auch so machen:

PHP:
$result = mysql_query('SELECT * FROM members WHERE id="'.$id.'" AND src!=""');
if(mysql_num_rows($result)>0)
  echo 'bild ist vorhanden';
else
  echo 'kein bild vorhanden';

//greets
//bad taste
 
Ich würde die Funktion empty() verwenden anstatt ='', sieht doch sonst irgendwie doof aus.
Desweiteren würde ich NICHT diese Sytax verwenden >>mysql_result($ergebnis,0,'src')<< da diese sehr langsam ist. Machste davon viele bzw hast du viele Nutzer kommt es zu erheblichen Geschwindigkeitseinbußen.
http://de3.php.net/manual/de/function.mysql-result.php einfach mal den mittleren Teil lesen(Wenn auf Anfrageergebnisse mit ......).

PHP:
if(empty($xy))
  echo'leer';
}
 
Zurück