Ankündigung

Einklappen
Keine Ankündigung bisher.

Array nach Aufruf verschwindet

Einklappen

Neue Werbung 2019

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

  • ChrisB
    antwortet
    Vereinfache doch erst mal das hier, das ist nämlich unnötig kompiliziert:
    PHP-Code:
            # Das Bestell_Array auf Einträge Prüfen
            
    $Z=count($Bestell_Array);
            
    # Wenn Bestell Array mehr als Null Einträge hat
            # einen Eintrag hinzufügen
            
    if ($Z>0)
            {
                
    array_push($Bestell_Array,$Bestell_ID);
            }
            
    # Wenn das Bestell Array noch Lee ist
            # dann das Array Erstellen
            
    else
            {
                
    $Bestell_Array=array($Bestell_ID);
            } 
    Den ganzen Kram kannst du durch zwei Zeilen ersetzen -
    1. Initialisierung von $Bestell_Array als Array vor der while-Schleife,
    PHP-Code:
    $Bestell_Array = array(); 
    2. Anfügen eines neuen Elements an dieses Array in der Schleife mit der Syntax mit geschweiften Klammern,
    PHP-Code:
    $Bestell_Array[] = $Bestell_ID
    Damit wäre der Code schon mal um einiges übersichtlicher.

    Einen Kommentar schreiben:


  • Lucifer
    antwortet
    hier noch mal der wie ich ihn gerade verwende das Skript ist noch nicht
    Fertig die Array Variable wird dann entweder an ein anderes Skript übergeben
    oder noch im selben skript weiterverarbeitet je nachdem

    PHP-Code:
    <?PHP
        session_start
    ();
        
    error_reporting(E_ALL);
        require_once (
    '../../bibliotheken/funktion.export.php');
        
    $Connect=mysql_connect($Connector['Host'],$Connector['Benutzer'],$Connector['Passwort']);
        
        
    $SQL="SELECT * FROM bestellung_bestellung WHERE Druck='N'";
        echo 
    "SQL:$SQL<br>";
        
    $Result=mysql_db_query($Connector['Base'],$SQL,$Connect);
        echo 
    "Result:$Result<br>";
        
    $Zeilen=mysql_num_rows($Result);
        echo 
    "Zeilen:$Zeilen<br>";
        WHILE (
    $ROW=MYSQL_FETCH_ARRAY($Result))
        {
            echo 
    "Schleife<br>";
            
    # Die ID auslesen
            
    $Bestell_ID    =$ROW['ID'];
            
    # Das Bestell_Array auf Einträge Prüfen
            
    $Z=count($Bestell_Array);
            echo 
    "Z:$Z<br>";
            
    # Wenn Bestell Array mehr als Null Einträge hat
            # einen Eintrag hinzufügen
            
    if ($Z>0)
            {
                
    array_push($Bestell_Array,$Bestell_ID);
            }
            
    # Wenn das Bestell Array noch Lee ist
            # dann das Array Erstellen
            
    else
            {
                
    $Bestell_Array=array($Bestell_ID);
            }
            
    # Abfrage Den Tabellen Eintrag als gedruckt updaten
        
        
    }
        
    # Prüfen ob das Bestell Array richtig ist
        
    foreach ($Bestell_Array as $E)
        {
            echo 
    "Erstellen:$E<br>";
        }
        
            
    $SQL_Update="UPDATE bestellung_bestellung SET Druck='J' WHERE Druck='N'";
            
    # Abfrage an die Datenbank schicken
            
    $Result_Update=mysql_db_query($Connector['Base'],$SQL_Update,$Connect);
        
    # weiter mit dem Script
    ?>
    Ausgabe:
    mit Auskommentierten Reporting All
    nicht Auskommentierten $Result_Update

    SQL:SELECT * FROM bestellung_bestellung WHERE Druck='N'
    Result:Resource id #10
    Zeilen:0

    Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\bestellung\export\drucken_vor.php on line 37
    nicht Auskommentierten Reporting All
    nicht Auskommentierten $Result_Update

    SQL:SELECT * FROM bestellung_bestellung WHERE Druck='N'
    Result:Resource id #10
    Zeilen:0

    Notice: Undefined variable: Bestell_Array in C:\xampp\htdocs\bestellung\export\drucken_vor.php on line 37

    Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\bestellung\export\drucken_vor.php on line 37

    nicht Auskommentierten Reporting All
    mit Auskommentierten $Result_Update

    SQL:SELECT * FROM bestellung_bestellung WHERE Druck='N'
    Result:Resource id #10
    Zeilen:5
    Schleife

    Notice: Undefined variable: Bestell_Array in C:\xampp\htdocs\bestellung\export\drucken_vor.php on line 19
    Z:0
    Schleife
    Z:1
    Schleife
    Z:2
    Schleife
    Z:3
    Schleife
    Z:4
    Erstellen:2
    Erstellen:3
    Erstellen:6
    Erstellen:7
    Erstellen:8
    Die echos sind jetzt nur mal da um zu prüfen

    Einen Kommentar schreiben:


  • Asipak
    antwortet
    Das macht auf mich wenig Sinn, da dein Array nichts mit der Abfrage zu tun hat. Bitte error_reporting hochschrauben.

    keine Anzeige der Echos in der While Schleife
    keine Zeilen Anzahl nach der Ersten Abfrage
    Alle diese Ausgaben sind in deinem Code nicht vorhanden. Bitte immer vollständigen Code posten (per copy&paste), sonst können wir deinen Ausführungen nicht im Detail folgen.

    Einen Kommentar schreiben:


  • Lucifer
    antwortet
    Offenbar ja Danke

    Die Array Variable $Bestell_Array ist nicht mehr vorhanden

    bzw wenn die Zeile

    $Result_Update=mysql_db_query($Connector['Base'],$SQL_Update,$Connect);

    nicht auskommentiert ist

    Habe ich nach der Select Abfrage auch die Zeilen anzahl.
    und auch in der While Schleife eingebaute echos nach Variablen Zuweisungen
    Funktionieren auch

    erst wenn diese Zeile wieder Aktiv

    keine Anzeige der Echos in der While Schleife
    keine Zeilen Anzahl nach der Ersten Abfrage

    Das Update wird allerdings richtig ausgeführt

    Einen Kommentar schreiben:


  • Asipak
    antwortet
    Und schreib' bitte
    Code:
    error_reporting(E_ALL);
    an den Anfang deiner Datei.

    Die Funktion mysql_db_query() ist im Übrigen veraltet und sollte nicht mehr verwendet werden. Alternative:
    Verwende PHP: mysql_select_db - Manual und PHP: mysql_query - Manual .

    Einen Kommentar schreiben:


  • ChrisB
    antwortet
    sobald ich diese Auskommentiere funktioniert es ohne Probleme
    Schön, dann lass' sie einfach auskommentiert


    (Oder beschreibe mal, was eigentlich dein Problem ist - das hast du nämlich offenbar vergessen.)

    Einen Kommentar schreiben:

Lädt...
X