Ankündigung

Einklappen
Keine Ankündigung bisher.

Array sinnvoll umformen aber wie?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • besercer
    hat ein Thema erstellt Array sinnvoll umformen aber wie?.

    Array sinnvoll umformen aber wie?

    Hallo liebe Php.de Community,

    da ich gleich keine Haare mehr zum rausreißen habe wende ich mich nun an euch in der Hoffnung ihr könnt mir helfen. Folgende Situation/Problem habe ich:


    Also ich möchte einen Edit bereich machen und lass mir die Datensätze aus der DB ausgeben (2. Array). Diese sollen dann unten in die Tabelle mit einer Schleife eingesetzt werden (gerade sind in der Tabelle nur blind Einträge).
    Jetzt ist die Frage wie die Tabelle aufgebaut werden muss oder wie das Get-Array(1. Array) so umgebaut wird das das Array genau so schön aussieht wie das, welches ich von der DB bekomme(2. Array). Sprich das der erste index die Id vom jeweiligen Datensatz immer ist und dadrinn dann die jeweiligen Felder mit Werten stehen. So wie halt beim 2. Array auch

    Ich hoffe ihr wisst was ich meine und das ich mich nicht all un unverständlich ausgedrückt habe. Es geht halt darum das die richtigen Daten zur richtigen Id stehen damit ich sie dannach auch in der DB updaten kann.

    Vielen Dank schonmal!!!
    Gruß besercer

  • besercer
    antwortet
    Okay, VIelen lieben Dank. Damit wurde mir schon gut geholfen!

    Einen Kommentar schreiben:


  • Moewe
    antwortet
    Nein...da es dat Get ist.

    $_GET['array'] darin sind deine Daten, die du offenbar haben willst.

    Wenn du bei name='array....
    aus dem Wort array irgendein wort machst (banane) siehst du was ich meine
    Sprich an der ausgabe siehst du es

    Einen Kommentar schreiben:


  • besercer
    antwortet
    AHHH WUNDERBAR! ) Ich komm der Sache schon näher DANKE
    Jetzt sieht das ganze so aus:


    Kann ich das erste Array noch entfernen? Also das 1 und 2 auf der gleichen Ebene ist wie action? Mein Html sieht nun aus aus:
    Code:
    <tr>
    				<td><input name="array[1][question]" type="text" value="Titel1" readonly="readonly"></td>
    				<td><input name="array[1][create_date]" type="text" value="2014-11-13 09:00:00" readonly="readonly"></td>
    				<td><input name="array[1][update_date]" type="text" value="2014-11-14 10:00:06" readonly="readonly"></td>
    				<td><input name="array[1][question_hidden]" type="text" value="1" readonly="readonly"></td>
    			</tr>
    			<tr>
    				<td><input name="array[2][question]" type="text" value="Titel2" readonly="readonly"></td>
    				<td><input name="array[2][create_date]" type="text" value="2014-10-27 14:46:17" readonly="readonly"></td>
    				<td><input name="array[2][update_date]" type="text" value="2014-10-28 15:53:28" readonly="readonly"></td>
    				<td><input name="array[2][question_hidden]" type="text" value="0" readonly="readonly"></td>
    			</tr>

    Einen Kommentar schreiben:


  • Moewe
    antwortet
    PHP-Code:
    echo "<input type='text' name='MeinArray[".$loop."]['title']' value=''/>";
    echo 
    "<input type='text' name='MeinArray[".$loop."]['create_date']' value=''/>";
    .
    .
    .
    .
    $loop
    suchst du sowas?


    @edit: Hausl war schneller

    Einen Kommentar schreiben:


  • hausl
    antwortet
    Ah, ok glaub ich habs.. Also das:

    [question_1]
    [question_2]
    ...

    ist der falsche Weg!

    Du kannst das HTML so benennen das schon arrays erzeugt werden, wenn du deine Elemente "question[]" nennst, versuch das mal und schau dir dann das Array an, da kannst dann zB auch gleich die ID verwenden...

    name="question[1]" ...
    name="question[2]" ...

    http://php.net/manual/de/faq.html.php#faq.html.arrays

    LG

    Einen Kommentar schreiben:


  • besercer
    antwortet
    Vielen Dank für die Schnelle Antwort und Sorry das ich mich so unverständlich ausdrücke.
    Es geht noch nicht um Joins oder Einträge in die Datenbank sondern nur um das Array welches ich später durchlaufen lasse für den Updatebefehl.

    Derzeit sieht das Array, welches ich per Get abschicke, ja so aus:
    Array
    [question_1] => Titel1
    [create_date_1] => 2014-11-13 09:00:00
    [update_date_1] => 2014-11-14 10:00:06
    [question_hidden_1] => 1
    [question_2] => Titel2
    [create_date_2] => 2014-10-27 14:46:17
    [update_date_2] => 2014-10-28 15:53:28
    [question_hidden_2] => 0

    Und ich möchte, damit ich die Daten sinnvoll updaten kann, das ganze so haben:
    Array
    [1]
    [title] => Titel1
    [create_date] =>2014-11-13 09:00:00
    [update_date] => 2014-11-14 10:00:06
    [question_hidden] => 1
    [2]
    [title] => Titel2
    [create_date] =>2014-10-27 14:46:17
    [update_date] => 2014-10-28 15:53:28
    [question_hidden] => 0

    Muss ich ggf. meine Tabelle umbauen? Also in Bezug auf das "name"-Attribut?
    Hoffentlich konnte ich mich nun besser Ausdrücken.

    Einen Kommentar schreiben:


  • hausl
    antwortet
    Es geht halt darum das die richtigen Daten zur richtigen Id stehen
    Ganz versteh ich es auch nicht aber ev. geht es um JOINs, die du in der DB machen kannst um so ein "verknpüftes" Ergebnis zu bekommen?

    Ansonsten die ID hast du ja, also sollte das kein Problem sein, oder ich verstehs einfach nicht.

    Einen Kommentar schreiben:


  • Moewe
    antwortet
    Komm nicht dahinter was du meinst

    @edit: Könntest du das ganze vieleicht umschreiben mit ganzen Worten:
    Ich dachte erst, du willst von deinem "SELECT * " fetch, auf ein kleineres Array runter. Sprich Datenbank gib mir alles, ich leg mir einfach ein Array an, mit den Spalten die ich haben will.
    Glaube...nein anders, ich hoffe nicht, dass du das meinst

    Einen Kommentar schreiben:

Lädt...
X