Bitte euch nochmal um hilfe

  • Hallo nochmal. ;)

    also jetzt gehts los bei mir. ich hab da wieder nen problem...

    ich versuche per button ein neuen eintrag in die datenbank zu schreiben.

    eigentlich kein thema, müssen wa auch nicht ausseeinander pflücken.

    das problem ist, ich hätte gerne bei einem neu eintrag 2 felder direkt mit einem wert ausgefüllt. das ist nun auch noch nicht das problem. das wirklich problem liegt daran das ich mal die daten in der datenbank eingetragen bekomme und meistens aber nicht. ich ändere aber an dem script nichts. hiermit versuche ich es:

    if ($button=="Hinzufügen")
    {

    $eintrag = "INSERT INTO zusatz
    (farbe,groesse)
    VALUES
    ('#ffffff', '24')" OR die(mysql_error());

    $eintragen = mysql_query($eintrag);
    echo'<meta http-equiv="refresh" content="0; URL=newsplan.php">';
    }

    ich versteh nicht woran das liegen könnte.

    bitte um hilfe



    und dann hab ich noch eine frage,

    es gibt ja diesen <select> tag. darin kann man per option halt einige sachen zur auswahl anbieten. mit dem klick auf so eine auswahl erscheint dann ein 2ter select tag worin die daten stehen in zusammenhang mit der auswahl aus dem ersten tag und die daten sollten aus der datenbank ausgelesen werden. ich denke soetwas realisiert man mit ajax, aber wenn ich ganz ehrlich bin, davon habe garkein plan, und ich wollte nicht erst ajax lernen um soetwas hin zu bekommen, gibt es nen script dazu oder ist das nicht ganz so schwer?

    ich hoffe ich werde verstanden....:-D

    gruss und danke für hilfe

    andreas

  • Das

    PHP
    $eintrag = "INSERT INTO zusatz
    (farbe,groesse)
    VALUES
    ('#ffffff', '24')" OR die(mysql_error());


    ist Quatsch, das "die(mysql_error())" gehört ans mysql_query

  • ja danke.

    aber ergibt leider immer noch kein eintrag und auch keine fehlermeldung.

    wiso wird da nix eingetragen? der datensatz wird ja angelegt, aber nur komplett leer, ausser halt die id.

    ähhhhmmmmm, schmeist du das forum eigentlich alleine? :lol:

  • Dann versuchs eben so

    PHP
    $eintrag = "INSERT INTO `datenbank`.`zusatz`(`farbe`, `groesse`) VALUES ('#ffffff', '24');

    `datenbank` musst du natürlich noch ändern, weiß ja nicht wie des ding bei dir heißt.

    Zu der letzten Frage: öhm, hättest du dir ein paar Threads angeschaut wüsstest du die Antwort.

    /P.S. zu deiner <select> Geschichte, realisieren könntest du es auch mit "ganz simplen" Javascript, musst per PHP allerdings schonmal alles vorberieten und per JS nur die richtigen boxen anzeigen lassen (display status verändern).

    2 Mal editiert, zuletzt von Grevas (18. Oktober 2009 um 22:21) aus folgendem Grund: wort verschluckt

  • Grevas, ich glaube nicht, dass das etwas ändert. Hier hilft wohl nur:

    Richtig debuggen
    1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
    2. Man schreibt an den Anfang des Scriptes die Zeile: error_reporting(E_ALL); und ini_set("display_errors", true);
    3. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
    4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
    5. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
    6. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
    7. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
    8. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

  • Ich glaubs auch nicht, aber das hab ich ja öfters und bin schon manchmal vom gegenteil überrascht worden... Eigentlich müsste ja der Error ausgespuckt werden, von dem was man sieht könnten es ja "nur" fehlerhafte Feldtypen sein.

    Testweise würd ich evtl. den Refresh mal auskommentieren, aber das gehört wohl zum "Richtig debugen" :D , damit hab ich nämlich noch nie was gemacht :rolleyes:

  • Grevas danke, aber hat leider nicht geholfen

    @bandit600 error_reporting(E_ALL); und ini_set("display_errors", true);

    haben mir den fehler ausgegeben und ich habe ihn beheben können. :oops:

    und dieser fehler war extrem peinlich.

    echo'<meta http-equiv="refresh" content="0; URL=newsplan.php">';exit;

    ich habe das exit; am ende nicht gesetzt, somit hat er das script weiter ausgeführt und mir mischmasch gemacht.

    danke euch nochmal, ihr seid die grössten

    @bandit600 das werde ich mir merken -----> error_reporting(E_ALL); und ini_set("display_errors", true);

  • es ist kein doppelter eintrag, aber meine php seite ist auch fürs UPDATE verantwortlich, also die gleiche datei mit keinem eintrag ändern...

    kann ja nur schief gehen

  • hi,

    das mag schon sein was du sagst, aber ich bin, wie du an meinen fragen bestimmt erkennen kannst, kein gelernter programmierer. Ich habe mir soweit wie ich jetzt bin alles selbst bei gebracht, und bin mit dem ergebniss was ich bis jetzt hinbekommen habe, sehr zufrieden. ich glaube du würdest erschrecken wenn du meine quellcodes sehen würdest, aber es funktioniert, glaube ich zumindest.

    ;)

  • sollte man es anders besser machen?


    Würde ich sonst erschrecken? Das sieht mir nach einem veraltetem Stil aus. Was steht bei diesem kleinen Script

    PHP
    <?php
       phpinfo();
    ?>


    unter register_globals und welche PHP-Version wird angezeigt?

  • Dann schreibst du vermutlich irgendwo einen Wert auf $button. Mal ein Tipp:

    Schreibe diese beiden Zeilen an den Anfang deines Scriptes:

    PHP
    <?php
       error_reporting(E_ALL);
       ini_set("display_errors", true);
    ?>


    Ich befürchte, PHP möchte dir einiges erzählen, nur du hörst nicht zu. ;) Kann aber auch sein, dass ich mich irre, ist aber bei Anfänger in der Regel so, dass ich recht habe.

  • oh man, hät ich besser nicht gefragt......klaaaa kommt da ne menge zum vorscheinen, sonst mist...

    du willst jetzt nicht wirklich wissen was da alles steht wa?

    :?:cry::cry::cry::cry:

  • so, ich habe alle fehler beseitigt, also zumindest wird mir nichts mehr angezeigt. ist das script den dann nu ok? oder git es sonst noch möglichkeiten rauszufinden ob was nicht so in ordnung ist?