MySQL Fetch Array Fehler

Prophet05

Erfahrenes Mitglied
Folgende Funktion:
PHP:
  function mysql_user_exists($name, $email, $mysql_serververbindung)
  {
     $sql = 'SELECT name FROM '.$mysql['user_tabelle']; 
     $result = mysql_query($sql, $mysql_serververbindung); 
     while ($daten = mysql_fetch_array($result)) 
     {
  	   if ($daten['name'] == $name)
  		 return true;
     }
     return false; 
  }
liefert folgende Fehlermeldung:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in E:\Server\game\php\mysql.php on line 17
Error: Column count doesn't match value count at row 1

Woran liegt das
 
Mein Vorschlag:
PHP:
function mysql_user_exists($name, $email, $mysql_serververbindung)
{
	$query = '
		SELECT
		        COUNT(*)
		  FROM
		        `tabelle`
		  WHERE
		        `name` = "'.mysql_real_escape_string($name).'"
		';
	$result = mysql_query($query, $mysql_serververbindung);
	if( mysql_result($result, 0, 0) > 0 ) {
		return true;
	} else {
		return false;
	}
}
Es ist auch möglich mit der mysql_num_rows()-Funktion zu arbeiten.
 
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in E:\Server\game\php\mysql.php on line 23
Error: Column count doesn't match value count at row 1

diesen fehler hat er mir ausgegeben als ich deine funktion getestet habe
 
PHP:
function mysql_user_exists($name, $mysql_serververbindung)
   	{
   		$sql = 'SELECT name FROM user WHERE name LIKE '.$name; 
   		$result = mysql_query($sql, $mysql_serververbindung); 
   		 
   		if (mysql_num_rows($result) > 0)  // hier ist line 18
   			return true;
   		else 
   			return false;
   	}
Diese funktion habe ich bis jetzt entwickelt aber sie liefert immernoch folgende fehlermeldung:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in E:\Server\game\php\mysql.php on line 18
Error: Column count doesn't match value count at row 1
 
Zeichenketten müssen auch für MySQL als solche gekennnzeichnet werden. Dann gehen wir mal auf Nummer sicher:
PHP:
function mysql_user_exists($name, $mysql_serververbindung)
{
	$query = '
		SELECT
		        1
		  FROM
		        `user`
		  WHERE
		        `name` LIKE "'.mysql_real_escape_string($name).'"
		  LIMIT
		        1
		';
	if( $result = mysql_query($sql, $mysql_serververbindung) && is_resource($result) && mysql_num_rows($result) > 0 ) {
		return true;
	} else {
		return false;
	}
}
 
Error: Column count doesn't match value count at row 1

dieser Fehler wird trotzdem immernoch ausgegeben.
 
Ich habe den Fehler gefunden.Ein sehr dummer fehler ich hatte noch keine MySQL-Verbindung aufgebaut.:(

mfg Prophet05
 
Zurück