Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Undefined Index bei Auswertung eines Formularfeldes

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Undefined Index bei Auswertung eines Formularfeldes

    Guten Morgen allerseits,

    sitze nun schon ein paar Stunden vor dem Problem und hab inzwischen keine Ahnung mehr wo ich noch suchen soll.

    Formulardaten in ne DB speichern funktioniert soweit bis auf einen Wert der aber definitiv im Script ankommt (habs mir mal ausgeben lassen und da war er da). Dieser Wert kommt aus einem Pulldown-Formularelement.

    habe es versucht mit

    PHP-Code:
    $articlegrp $_POST['articlegrp']; 
    sowie
    PHP-Code:
    if (isset($_POST['articlegrp'])) $articlegrp $_POST['articlegrp']; 
    Das SQL-Query ist folgendes und ich müsste blind sein wenn ich den fehler immernoch übersehe.

    PHP-Code:
    $request "INSERT INTO $table 
                     (articleid,
                     articlename,
                     articlegrp,
                     articledesc,
                     picpath,
                     sheetpath)
                    
                VALUES 
                    ('
    $articleid',
                     '
    $articlename',
                     '
    $articlegrp',
                     '
    $articledesc',
                     '
    $picpath',
                     '
    $sheetpath')"
    Wie gesagt alles wird gespeichert nur dieser eine dumme Wert nicht.
    Im Error log kommt das Spiel mit dem undefined index

  • mlistl
    antwortet
    Ach du meine Güte ich bin so blöd!!! Kommt davon wenn man die nacht durcharbeitet.

    Hab den mist tatsächlich die ganze Zeit gespeichert, jedoch bei der Ausgabe den Wurm drin gehabt. Zusammen mit dem Fehler der zwar weiterhin kommt, hats mich total aus dem Konzept gebracht.

    Und Danke für den Tip bezüglich der Datenbankgeschichte bin ich nebenher ständig dabei.

    Danke trotzdem für die Mühen

    Einen Kommentar schreiben:


  • wolf29
    antwortet
    Wenn das der komplette Quellcode ist, für das PullDown Menü, dann fehlt ein

    PHP-Code:
    <select name="irgendwas">...</select
    vor den Options. Warum schreibst du

    PHP-Code:
    echo mysql_error(); 
    und nicht eher

    PHP-Code:
    $result mysql_query($request) or die("Fehler: ...."); 
    Als was ist die Spalte den definiert in der MySQL DB für den Wert? Bekommst du einen Integer Wert übergeben? Hast du mal einfach

    PHP-Code:
    echo $request
    gemacht, damit du den SQL Insert Befehl auf dem Bildschirm hast? dann siehst du, ob alle Variablenwerte da sind. SQL Injection solltest Du dich auch übrigens mal informieren!

    Wolf29

    P.S. @ragtek: warum Käse?

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von wolf29 Beitrag anzeigen
    Hi.

    Zeig mal bitte, wie du das PullDown Menü definiert hast (also etwas mehr Code)!
    Den Wert bekommst Du aber, oder wie? Also funktioniert dann dein SQL Statement nicht. korrekt? Hast Du dir das SQL Statement mal mit echo ausgeben lassen, sprich: die Variable $request?

    Wolf29
    Was ist den das für ein Käse??


    Das Problem liegt bei
    PHP-Code:
    $articlegrp $_POST['articlegrp']; 
    und dem verwendeten Error Level
    Nur wieso
    PHP-Code:
    if (isset($_POST['articlegrp'])) $articlegrp $_POST['articlegrp']; 
    nicht funkt kann ich gerade auch nicht sagen.

    Füg mal
    PHP-Code:
    error_reporting(E_ALL & ~E_NOTICE); 
    am Anfang deines PHP Codes hinzu

    Desweiteren solltest du dich umbedingt über SQL Injections und co informieren.
    Im Moment kann ein Angreifer alles Mögliche in deiner Datenbank aufführen

    Einen Kommentar schreiben:


  • mlistl
    antwortet
    PHP-Code:
    <?
        include ('db.php');
        $table = "articlegrp";
        $request = "SELECT grpid , grpname FROM $table ORDER BY 'grpìd'";
            $result = mysql_query($request);
                echo mysql_error();
                 while ($row = mysql_fetch_array($result))
                { 
                 echo "<option value=\"".($row['grpid'])."\">".($row['grpname'])."</option>";
                       }
                    mysql_free_result($result);
                    mysql_close();
    ?>
    Ich habs mir im html schon angeschaut und da kommt es ansich gut an.

    Ich hab die Variable im verarbeitenden Script ausgeben lassen und da is sie auch da.
    Die Tabelle hab ich auch schon 5 mal überprüft.

    Einen Kommentar schreiben:


  • wolf29
    antwortet
    Hi.

    Zeig mal bitte, wie du das PullDown Menü definiert hast (also etwas mehr Code)!
    Den Wert bekommst Du aber, oder wie? Also funktioniert dann dein SQL Statement nicht. korrekt? Hast Du dir das SQL Statement mal mit echo ausgeben lassen, sprich: die Variable $request?

    Wolf29

    Einen Kommentar schreiben:

Lädt...
X