Andreas: zu blöd für Arrays....

Beitrag lesen

Hi!

Ja, irgendwann geht's nicht mehr ohne, schon gar nicht bei Datenbankanwendungen...

Das traurige an der Sache ist das ich die schon länger benutze - mnur nicht richtig verstehe :)

Nur wie bekomme ich aus dem mysql_fetch_array einen "normalen" array, wie oben, so dass ich array_diff() überhaupt benutzen kann?

Was du mit mysql_fetch_array bekommst ist ein assoziativer Array (jedes Element hat noch einen "Namen", wie du schon gemerkt hast)
Versuch's mal mit der Funktion mysql_fetch_row(query_result), die gibt einen normalen numerierten Array zurück. Vielleicht hilft dir das

OK. bringt mich leider auch nicht viel weiter. Vielleicht kannst Du mir ja folgendes erklären:

Warum gibt mir das richtigerweise "3" wieder:
<?
$array1 = array ("x" => 1, 2, 3);
$array2 = array ("css" => 4, 1, 2);
$result = array_diff ($array1, $array2);

echo $result[1];
?>

und das nix!!!
<?
$array1 = array (1, 2, 3);
$array2 = array (4, 1, 2);
$result = array_diff ($array1, $array2);

echo $result[1];
?>
Ich verstehe das alles nicht.

bei mir sieht das so aus:
<?
$belegt=mysql_fetch_row($res);

$plaetze = array ("a" => 1, 2, 3, 4, 5, 6);

$frei = array_diff($plaetze,$belegt);
echo $frei[0].$frei[1].$frei[2];
?>

wenn ich mysql_fetch_row($res); vorher durch eine Schleife schicke bekomme ich folgende Werte: 1,2,3,5

Also müßte ich hier irgendwie 4 oder 6 angezeigt bekommen - so wie es jetzt ist kommt immer 234
vorher, mit mysql_fetch_array kam immer 3...
Totaler Quatsch alles, ich hab schon einiges probiert, das Problem ist einfach das ich nicht genau weiß wie der array mysql_fetch_row aussehen würde, wenn ich Ihne selbst erzeugen würde - array (1, 2, 3, 5); hätte ich mal vermutet, aber das ginge mit array_diff eh nicht - ich verstehs halt nicht, udn was ist auf einmal für ein Unterschied, wenn ich statt array ("x" => 1, 2, 3) nur noch array (1, 2, 3) habe??? Der letzte Array ist der einzige den ich wirklich glaube zu verstehen :))
Bin ich einfach zu doof?????
Das kann doch alles nicht sein? Außerdem wäre ich mit sämtlichen anderen Lösungen schon für 2 Stunden fertig gewesen... aber jetzt will ichs endlich mal wissen!

Grüße
Andreas