Ankündigung

Einklappen
Keine Ankündigung bisher.

Bestellformular mit eintrag in SQL-Datenbank

Einklappen

Neue Werbung 2019

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

  • Bestellformular mit eintrag in SQL-Datenbank

    Hallo! Da ich soetwas noch nicht gemacht habe würde ich mich vorarb informieren auf welche Sicherheitslücken man achten sollte. Da Datenschutz ein sehr sensibles Thema ist würde ich das gerne von Anfang an (alle so weit wie möglich) Risikofaktoren ausschließen.
    Die Funktionsweise soll einem Onlineshop ähneln, d.h. auf der ersten Seite soll der Kunde die Produkte auswählen die ihm gefallen und danach werden die üblichen kontaktdaten angelegt (an dieser stelle aber noch keine Abfrage von Kontonr etc., das traue ich mir noch nicht zu). Sollte der Kunde noch nicht in der Datenbank stehen, wird ein neuer Kundeneintrag erstellt und die Bestellung in die Kundeneigenetabelle eingetragen. Dann soll die Bestellung als Auftragsbestätigung an den Kunden geschickt werden.

    Ich hoffe ihr habt das Konzept ungefähr verstanden Sollte es ein blödes sein würde ich mich auf verbesserungsvorschläge freuen

  • #2
    http://www.php.de/php-einsteiger/675...sumfragen.html

    Verwechsle nicht Datenschutz und Datensicherheit.

    Datenschutz hat mit deinem Verhältnis zum Kunden zu tun und einen formaljuristischen Hintergrund. So musst du z.B. dem Kunden mitteilen, welche Daten du warum wie lange speicherst.

    Datensicherheit umfasst die Thematik Daten so zu speichern, dass sie wieder ohne Verlust ausgelesen werden können und dass fahrlässig oder vorsätzlich falsche Eingaben nicht deinen Datenbestand gefährden. Dazu kannst mit dem Thema 'sql injections' googeln oder auch hier im Forum suchen.

    http://www.php.de/php-einsteiger/489...nsammlung.html

    Kommentar


    • #3
      Hi Leute!
      Kann mir jemand folgendes Phänomen erklären:
      Das hier funktioniert:
      PHP-Code:
      $vname "joseph";
      $nname "meyer";
      $eintrag "INSERT INTO `order` (vname, nname) VALUES ('$vname', '$nname')";
      $qresult1 mysql_query($eintrag);
          if (!
      $qresult1) {
              echo 
      "insert error <br \>";
              } 
      und das hier nicht:
      PHP-Code:
      $vname $_POST["vorname"];
      $nname $_POST["nachname"];
      echo 
      "vname: $vname <br \>";
      echo 
      "nname: $nname <br \>";
      $eintrag "INSERT INTO `order` (vname, nname) VALUES ('$vname', '$nname')";
      $qresult1 mysql_query($eintrag);
          if (!
      $qresult1) {
              echo 
      "insert error <br \>";
              } 
      die variablen sind nicht leer, da steht das richtige drin, wurde mit den 2 echos getestet..
      Gibt es irgendeine Schreibweise für die queries (ich meine damit nur die Zeichensetzung wie ", ', oder `) die 100% funktioniert? weil langsam verzweifel ich :/

      Kommentar


      • #4
        PHP-Code:
        $vname $_POST["vorname"];
        $nname $_POST["nachname"];
        echo 
        "vname: ".$vname." <br \>";
        echo 
        "nname: ".$nname." <br \>";
        $eintrag "INSERT INTO order (vname, nname) VALUES ('".$vname."', '".$nname."')";
        $qresult mysql_query($eintrag);
            if (!
        $qresult) {
                echo 
        "insert error <br \>";
                } 

        Kommentar


        • #5
          Klappt auch nicht :/
          kommt inser error... gibts auch irgendwie eine funktion um den passenden stderror zu kriegen?

          Kommentar


          • #6
            mysql_error() und welcher error?

            Kommentar


            • #7
              Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

              Kommentar


              • #8
                Du hättest meinen Tipp in #2 ja auch mal befolgen können, dann häättest du das glöeich so geschrieben:
                PHP-Code:
                $eintrag "INSERT INTO `order` (vname, nname) 
                            VALUES ('" 
                mysql_real_escape_string($vname) . "', '" mysql_real_escape_string($nname) . "')";
                $qresult mysql_query($eintrag) or die( mysql_error() ); 

                Kommentar


                • #9
                  Zitat von Broox Beitrag anzeigen
                  Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
                  Wenn du keine Verbindung zu mysql hast, dann kannst du auch nichts drin speichern.

                  Kommentar


                  • #10
                    Oh mein Gott! Haha... Danke schön! Ich glaube ich brauch mal eine pause ich habs mir selber 5 mal angeschaut und nicht gemerkt dass es nicht im selben ordner wie die include liegt... sorry aber manchmal übersieht mans..

                    Kommentar


                    • #11
                      Datensicherheit umfasst die Thematik Daten so zu speichern, dass sie wieder ohne Verlust ausgelesen werden können und dass fahrlässig oder vorsätzlich falsche Eingaben nicht deinen Datenbestand gefährden. Dazu kannst mit dem Thema 'sql injections' googeln oder auch hier im Forum suchen.
                      Das meiste davon würde ich eher unter dem Begriff „Datenintegrität“ zusammenfassen. Unter Datensicherheit verstünde ich wiederum sowas wie Schutz vor (un)beabsichtigter Manipulation etc. (fahrlässig/vorsätzlich falsche Eingaben). Wikipedia sieht das allerdings anders:

                      http://de.wikipedia.org/wiki/Datensi...it#Schutzziele

                      Darunter fällt auch durchaus der Aspekt Datenschutz.

                      [edit]

                      Ok, falsch gelesen: http://de.wikipedia.org/wiki/Datensi...it#Teilaspekte

                      Kommentar

                      Lädt...
                      X