Ankündigung

Einklappen
Keine Ankündigung bisher.

Array Problem

Einklappen

Neue Werbung 2019

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

  • Gast-Avatar
    Ein Gast erstellte das Thema Array Problem.

    Array Problem

    Hey,

    und zwar hab ich ein Script gebastelt in welchen man eingelesene Daten editieren kann, welche dann in ein Array geschrieben werden und �ber einen Button werden dann alle ge�nderten Daten geschpeichert.
    Jetzt hab ich das Problem dass wenn es zuviele Daten werden, dass dem Arry wahrscheinlich zuviel wird und er irgendwelchen mist speichert oder ganicht ohne einen Fehler zu bringen.
    Wie kann ich daf�r sorgen dass ich mehr daten speichern kann?Mehrere Arrays?
    Hier mal der wichtige CODE:

    PHP-Code:
     ...
    if (
    $_POST['anz']) //wenn eine Anzahl pepostet
        
    {
             
    $eintrag=$_POST['feld']; //das Array "$eintrag" aus dem Arrayelement "$_POST['feld']" holen

             
    for ($i=1$i<=$_POST['anz']; $i++)
                 {
                     
    //echo $eintrag[$i][3].", ".$eintrag[$i][1].", ".$eintrag[$i][2]."
    \n";
                     //das Query auskommentieren. Dann kannste mit echo Testen, wenn du weitere Felder brauchst
                     
    $update = "UPDATE $tabelle SET name='".$eintrag[$i][1]."'spiele='".$eintrag[$i][2]."'einw='".$eintrag[$i][3]."',
    ausw='".$eintrag[$i][4]."'gk='".$eintrag[$i][5]."'grk='".$eintrag[$i][6]."'rk='".$eintrag[$i][7]."'tore='".$eintrag[$i][8]."' WHERE id='".$eintrag[$i][9]."'";
                     mysql_query (
    $update);
                     }
        echo "
    &Auml;nderung wurde &uuml;bernommen!

    </
    p><hr noshade='1'><font class='link'>[url='index.php']Zur&uuml;ck zum Spielberichtsindex[/url]

    [
    url='../../index.php']Zur&uuml;ck zu www.sg-grosskugel.de[/url]</font>"; //Weiterleitung (in diesem Falls zu sich selbst)
                             //auch m&ouml;glich:   header ("
    Location:minus14.php");
             }


    else    {
        
    $abfrage = mysql_query ("SELECT FROM $tabelle");
             
    $i=1;
             echo " 
    \n<form action=\"".$PHP_SELF."\" method=\"POST\" name=\"form\">\n ";
             while(
    $row mysql_fetch_object($abfrage))
            {
                     
    //Feldnamen m&uuml;ssen zweidimensionale Arrays sein! Das Scheme ist erkennbar, denk ich..
            
    echo " <input size='20' type='Text' name='feld[$i][1]' value='$row->name' >";
            echo 
    " \nSpiele:<input type='Text' size='3' name='feld[$i][2]' value='$row->spiele' >";
            echo 
    " \nEinw:<input type='Text' size='3' name='feld[$i][3]' value='$row->einw' >";
            echo 
    " \nAusw:<input type='Text' size='3' name='feld[$i][4]' value='$row->ausw' >";
            echo 
    " \nGk:<input type='Text' size='3' name='feld[$i][5]' value='$row->gk' >";
            echo 
    " \nGrk:<input type='Text' size='3' name='feld[$i][6]' value='$row->grk' >";
            echo 
    " \nRk:<input type='Text' size='3' name='feld[$i][7]' value='$row->rk' >";
            echo 
    " \nTore:<input type='Text' size='3' name='feld[$i][8]' value='$row->tore' >";
                     echo 
    " \n<input type='hidden' name='feld[$i][9]' value='$row->id' >";
                echo 
    " <hr/>\n ";
                     
    $i++;
                 }

             
    $abfrage2 mysql_query("SELECT COUNT(*) AS anzahl FROM $tabelle"); //alle Eintr&auml;ge z&auml;hlen
             
    $row mysql_fetch_object($abfrage2);                               //und mitschicken

             
    echo "\n<input type=\"hidden\" name=\"anz\" value=\"".$row->anzahl."\">\n";
             echo 
    "<input type=\"Submit\" value=\"Daten Ã¤ndern\">\n";
        echo 
    "</form>\n ";
             } 
    ... 

  • Gast-Avatar
    Ein Gast antwortete
    Was meinst du bitte mit sauberen Code?
    Hab ja auch gedachrt dass ein Array nicht voll werden kann, aber irgendetwas muss es ja sein. Ich denke der Fehler muss nicht unbedingt in dem Array liegen, ich vermute viel mehr dass irgendein Problem bei der Variable $i ist, weil wenn eine bestimmte Anzahl an Zeilen(verschiedene Datensätze) überschritten wird, speichert das Script überall eine 0 rein- also keinen Wert. Daran muss es liegen.

    mfg

    Einen Kommentar schreiben:


  • JEGO
    antwortet
    es würde vielleicht schon reichen, wenn er sich mal fehler ausgeben lassen würde.

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Stimmt, aber in die kommt man üblicherweise nicht, deshalb habe ich aber auch nochmal nachgefragt, von welchen Dimensionen wir hier reden.

    Einen Kommentar schreiben:


  • xabbuh
    antwortet
    Zitat von Zergling
    Also ein Array kann nicht voll werden oder von welchen Dimensionen reden wir?
    Du kannst mit einem Array aber durchaus die in memory_limit festgelegte Größe überschreiten.

    Einen Kommentar schreiben:


  • JEGO
    antwortet
    zeig mal deinen Sauberen code bitte.

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Also ein Array kann nicht voll werden oder von welchen Dimensionen reden wir? Du kannst locker tausende Elemente reinbraten.

    Was funktioniert denn nicht, die Ausgabe, die Formular-Generierung oder die Speicherung?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Danke erstmal für eure hinweise.
    Hab den Teil meines Scripts reingemacht damit ihr eventuell versteht was ich meine. Bekomme leider keine Fehlermeldung sonst würde ich ja nicht so dumm fragen.
    Also ich hab das Probelm, dass wenn es zuviele Felder werden die ich angelegt habe und sie dann ändern will, die daten nicht mehr gespeichert werden, weil wahrscheinlich dass Array voll ist. Anders kann ich mir dass nicht vorstellen. Dafür such ich halt jetzt ne Lösung. Vielleicht mehere Arrays. Ich weiß nicht?

    mfg

    Einen Kommentar schreiben:


  • JEGO
    antwortet
    danke das du Ihm das sagst, Zergling....

    ich wäre nich so freundlich...

    also bitte nur relevanten teil posten, keine vermutungen sondern die Fehlermeldung posten.

    es gibt keine Fehlermeldungen??? dann benutz mal:


    PHP-Code:
    <?php

    error_reporting
    (E_ALL);

    // und db abfragen die etwa so aussehen

    $query "SELECT was, du, willst  FROM deinerTabelle";
    $res mysql_query($query) or die (mysql_error());

    // und lass die @ weg... fehler uterdrückt man nicht, sondern macht es richtig.

    ?>

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    Ich verstehe dein Problem nicht, du sagst irgendwas geht nicht, wahrscheinlich liegts an PHP und postest Code mit nem Haufen irrelevantem Zeug.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Kann mir hier wirklich keiner helfen. Wäre echt nett!!!

    mfg

    Einen Kommentar schreiben:

Lädt...
X