Ankündigung

Einklappen
Keine Ankündigung bisher.

Eintarg in Mysql-Spalte mit Speichern des alten Wertes

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

  • Eintarg in Mysql-Spalte mit Speichern des alten Wertes

    Hallo liebe Leute,
    ich habe folgendes Problem:

    Und zwar möchte ich einen Eintrag in eine Mysql-Spalte eintragen. Jedoch soll der vorige Eintrag nicht einfach gelöscht werden, sondern der alte soll lediglich erweitert werden.
    Fn diesem Fall soll in die Spalte "bestellung" bei dem Benutzer mit der bestimmten Session_id der Eintrag erweitert werden.
    Also habe ich mir folgendes erdacht:

    mysql_connect("localhost","root","");
    mysql_select_db("chensy");
    $sql="SELECT bestellung WHERE session='" . session_id() . "'";
    $result=mysql_query($sql);

    $sql="UPDATE user SET bestellung='$_GET[del745xU63] $row[bestellung]' WHERE session='" . session_id() . "'";
    if (mysql_query($sql)) {
    echo "Der Artikel befindet sich nun in ihrem Warenkorb. Sie können nun weiter shoppen.<br><br>";
    Es erklärt sich ja von selber:
    Der PC soll sich erst den aktuellen Eintrag holen, welcher dann mit dem neuen Eintrag
    $_GET[del745xU63]
    durch den Befehl
    $sql="UPDATE user SET bestellung='$_GET[del745xU63] $row[bestellung]' WHERE session='" . session_id() . "'";
    eingegeben wird.
    Auch das Speichern des Wertes
    $row['bestellung']
    als Variable liefert kein anderes Ergebnis.
    Denn der Computer speichert zwar immer den neuen Eintrag, aber der alte wird gelöscht :/.

    Bitte helft mir und entdeckt meinen Denkfehler!

    Liebe Grüße
    Heizkessel


  • #2
    Und woher soll deiner Meinung nach $row kommen?

    Du solltest schon noch irgendwo ein $row = mysql_fetch_array(...) haben.


    Aber ganz davon abgesehn: Das sieht insgesamt nicht so aus, als wäre das besonders durchdacht...
    Create your own quiz show.

    Kommentar


    • #3
      Ich hab mich hier eigentlich nicht angemeldet, um mich unterschwellig anpöbeln zu lassen. Also entweder schreibe einen sinnvollen Beitrag oder lasse es.

      Hätte ich für mich den Anspruch erhoben, schon ebsonders gut zu sein in PHP hätte ich meine Frage auch nicht in der Rubrik "Anfänger" gestellt.

      Ich glaube solche "Lehrmeister" wie dich kann kein PHP-Schüler gebrauchen, was du, um dich zu erinnern, auch mal gewesen bist.

      Guten Abend.

      P.S.:
      Kann mir vielleicht sonst jemand helfen, der Verständnis dafür aufbringt, dass ich nicht mit perfekten PHP- Kentnissen geboren wurde?

      Kommentar


      • #4
        Zitat von Heizkessel Beitrag anzeigen
        Ich hab mich hier eigentlich nicht angemeldet, um mich unterschwellig anpöbeln zu lassen. Also entweder schreibe einen sinnvollen Beitrag oder lasse es.
        Mein Beitrag ist sinnvoll, danke.
        Bist du immer so empfindlich oder nur wenn jemand seine Zeit in deine Probleme investiert?


        Ich glaube solche "Lehrmeister" wie dich kann kein PHP-Schüler gebrauchen, was du, um dich zu erinnern, auch mal gewesen bist.
        Ja, und ich war dankbar für Hilfe. Wenn ich etwas nicht verstanden habe, dann habe ich nochmal gefragt und mich nicht schmollend in die Ecke gestellt

        Da du meinen Hinweis ja hartnäckig ignorierst, nochmal:

        Du verwendest $row in deinem 2. Query. In deinem Quellcode wird der Variable $row aber nirgendwo ein Wert zugewiesen - logisch, dass da also auch nxi drin steht.

        Du solltest also noch ein $row = mysql_fetch_array($result); in deinen Quellcode einbauen.
        Falls dir die Arbeit mit einer Datenbank noch unbekannt ist: Bitte lies ein paar Grundlagen-Tutorials dazu durch. Dann findest du solche "Fehler" zukünftig selbstständig.


        Zu meinem Hinweis, dass das ganze nicht ganz durchdacht aussieht:
        Wie soll so wieder eine Ware aus dem Warenkorb gelöscht werden, wenn alles in einer Spalte steht (Google mal nach Normalisierung, falls dich das intressiert, falls nicht schau dir mal das SQL-Kommando CONCAT() an - dann kannst du dir das 1. Query ganz sparen)? Wieso ordnest du das ganze einer Session-Id zu?
        Du solltest außerdem die $_GET-Variable nicht ungeprüft und unbearbeitet in dein SQL-Query einbauen. (Stichwort: SQL-Injection)
        Evtl. sollt


        Guten Abend.
        Geschenkt.
        Create your own quiz show.

        Kommentar


        • #5
          Zitat von Heizkessel Beitrag anzeigen
          Ich hab mich hier eigentlich nicht angemeldet, um mich unterschwellig anpöbeln zu lassen. Also entweder schreibe einen sinnvollen Beitrag oder lasse es.

          Hätte ich für mich den Anspruch erhoben, schon ebsonders gut zu sein in PHP hätte ich meine Frage auch nicht in der Rubrik "Anfänger" gestellt.

          Ich glaube solche "Lehrmeister" wie dich kann kein PHP-Schüler gebrauchen, was du, um dich zu erinnern, auch mal gewesen bist.

          Guten Abend.

          P.S.:
          Kann mir vielleicht sonst jemand helfen, der Verständnis dafür aufbringt, dass ich nicht mit perfekten PHP- Kentnissen geboren wurde?
          wie gehst du denn ab?
          eine kleine bemerkung und der tickt aus, also sowas muss ja echt nicht sein.

          escape' das SQL mal richtig:

          PHP-Code:
          <?php
          $sql
          ="UPDATE user SET bestellung = '".$_GET['del745xU63'] . $row['bestellung']"' WHERE session = '" session_id() . "'";
          ?>
          Nils aka XraYSoLo

          Kommentar


          • #6
            Ja normalerweise bin ich auch nicht so leicht reizbar aber wenn ich mich hier stundenlang mit so einem problem abquäle steigt meine reizbarkeit schon um einiges ^^.

            Also in diesem Sinne: Sorry

            Trotzdem Danke für eure Mithilfe.

            Kommentar


            • #7
              Hm, sorry wenn ich nochmal störe, aber der PC sagt mir immer

              Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Dokumente und Einstellungen\sascha\Eigene Dateien\xampp\htdocs\chensyinclude.php on line 179
              Wenn ich
              mysql_fetch_array o.ä. verwende, reagiert er dementsprechend mit der gleichen Fehlermeldung :/.

              Kommentar


              • #8
                Dein SQL-Query ist ungültig. Es sollte SELECT bestellung, wasauchimmerdusonstnochbrauchst FROM user WHERE .... heißen.

                Solche Fehler findest du, indem du mysql_error() verwendest und dir deine querys nochmal genau anschaust.
                Create your own quiz show.

                Kommentar


                • #9
                  dann zeig' mal die aufforderung her...

                  Nils aka XraYSoLo

                  Kommentar

                  Lädt...
                  X