3D Array Problem

3D Array Problem

am 05.08.2006 19:40:25 von Jon Schmidt

Ok, Leute,

ich hänge hier voll fest. Bin leider auch Array-Anfänger. Ich wäre
sehr froh, wenn mir jemand weiter helfen könnte.

Idee: Ich lese aus einer Datenbank einen Form-Typ aus (Checkbox, Text,
Radio-Button). Dazu lese ich aus, welcher Text dabei stehen soll, also
zB. 3 radios mit 3 verschiedenen Texten dazu ("gut". "mittel",
"schlecht"). In den Form-Typen werden auch Variablen ausgelesen.

Ok, was ich jetzt auslesen kann ist der Text assoziiert mit dem
Form-Typen, wie oben beschrieben. Konzentrieren wir uns auf die
Radiobuttons. Für diese brauche ich aber unbedingt als value die ID,
die zu dem jeweils ausgelesenen Text gehört. Und genau diese bekomme
ich nicht raus, weil mein Array wohl nur 2D ist (Ich muss das alles in
ein Array packen, da ich die Darstellungsweise nicht vertikal, sondern
horizontal aufgelistet haben muss!).

Hier mal der Code, den ich im Moment verwende:

$getOne =3D mysql_query("SELECT
taba.RID,taba.AID,taba.answer_text,tabb.answertype
FROM taba LEFT JOIN tabb ON taba.AID =3D tabb.AID WHERE taba.IID =3D
$IID");

while($row =3D mysql_fetch_row($getOne))
{
$RID =3D $row[0];
$AID =3D $row[1];
$atext =3D $row[2];
$atype =3D $row[3];

$getTwo =3D mysql_query("SELECT RID FROM tabc WHERE QID =3D $QID AND IID =
=3D
$IID AND RID =3D $RID");
while($row1 =3D mysql_fetch_row($getTwo)) { $checked =3D $row1[0]; }

$arrANS[] =3D array($row["2"]=3D>$row["3"]);
if($RID == $checked) { $oha =3D $atext; }
...
}

Zum Auslesen verwenden ich folgenden Code:

echo"

colspan=3D10 align=3Dcenter> src=3Dimages/horizontal-scale01.gif>";
while(list($text, $type) =3D each($arrANS))
{
while(list($text2, $type2) =3D each($type))
{
if($text2 == $oha) $checked =3D "checked";
else $checked =3D "";
eval("?> }
}
echo"
$type2
$text2
";

Die Variable $type2 stellt den Form-Typen dar und hier muss die $RID
als value übergeben werden.

Wie gesagt, bin echt Anfänger im Bereich Arrays und würde mich
wirklich freuen, wenn Ihr mir sagen könnt, wie ich die $RID da rein
kriege.

Danke schon mal für Eure Tips,
MfG Jon

Re: 3D Array Problem

am 05.08.2006 20:04:12 von Frank Schenk

Jon Schmidt schrieb:
> Ok, Leute,
>
> ich hänge hier voll fest. Bin leider auch Array-Anfänger. Ich wäre
> sehr froh, wenn mir jemand weiter helfen könnte.
>
> Idee: Ich lese aus einer Datenbank einen Form-Typ aus (Checkbox, Text,
> Radio-Button). Dazu lese ich aus, welcher Text dabei stehen soll, also
> z.B. 3 radios mit 3 verschiedenen Texten dazu ("gut". "mittel",
> "schlecht"). In den Form-Typen werden auch Variablen ausgelesen.

$arrFoo = array();

$arrFoo[$id] = array(
'name1' => $value1,
'name2' => $value2,
};

foreach($arrFoo as $id => $values){
$val = $values['name1'];
}


sollte als Denkanstoß reichen.

hth, Frank

Re: 3D Array Problem

am 05.08.2006 22:54:06 von Jon Schmidt

Frank Schenk wrote:
> Jon Schmidt schrieb:
> > Ok, Leute,
> >
> > ich hänge hier voll fest. Bin leider auch Array-Anfänger. Ich wäre
> > sehr froh, wenn mir jemand weiter helfen könnte.
> >
> > Idee: Ich lese aus einer Datenbank einen Form-Typ aus (Checkbox, Text,
> > Radio-Button). Dazu lese ich aus, welcher Text dabei stehen soll, also
> > z.B. 3 radios mit 3 verschiedenen Texten dazu ("gut". "mittel",
> > "schlecht"). In den Form-Typen werden auch Variablen ausgelesen.
>
> $arrFoo =3D array();
>
> $arrFoo[$id] =3D array(
> 'name1' =3D> $value1,
> 'name2' =3D> $value2,
> };
>
> foreach($arrFoo as $id =3D> $values){
> $val =3D $values['name1'];
> }
>
>
> sollte als Denkanstoß reichen.
>
> hth, Frank

Danke, Frank,

var_dump sagt mir, dass das Array voll ist, allerdings liest foreach
nur den letzten Wert aus. Hmm, sehr merkwürdig. Irgendeine Idee?

Jon

Re: 3D Array Problem

am 06.08.2006 03:35:37 von Frank Schenk

Jon Schmidt schrieb:

> Danke, Frank,
>
> var_dump sagt mir, dass das Array voll ist, allerdings liest foreach
> nur den letzten Wert aus. Hmm, sehr merkwürdig. Irgendeine Idee?

Nein, Gedankenlesen per Email setzt bei mir leider immer öfter aus. Wie
sieht denn dein Lösungsansatz aus?


Frank

Re: 3D Array Problem

am 10.08.2006 15:19:53 von Martin Lange

Frank Schenk wrote:
> Jon Schmidt schrieb:
>
>> Danke, Frank,
>>
>> var_dump sagt mir, dass das Array voll ist, allerdings liest foreach
>> nur den letzten Wert aus. Hmm, sehr merkwürdig. Irgendeine Idee?


werden die ausgelesenen werte vllt. immerwieder überschrieben?