dedlfix: PHP - aber sicher

Beitrag lesen

echo $begrüßung;

Ich nehme dafür eine Stelle vor bzw. am Beginn des Abschnitts, in dem die entsprechende Maskierung notwendig ist.

Das heißt, du legst extra eine neue Variable an, mit dem geänderten Wert, auf die du dann (in den vermutlich meisten Fällen) nur einmal zugreifst?

$var1_esc = escape($var1);

(alle Beispiele in Pseudocode)

Oder änderst du die bestehende Variable, so dass deren Inhalt für andere Zwecke quasi wertlos geworden ist (nicht immer gibt es eine eindeutige Umkehrfunktion)?

$var1 = escape($var1);

Mein Ansatz wäre (in etwa) "dezentral zentral". Alles zu seiner Zeit (dezentral), dann aber gleich alle betroffenen Variablen (zentral).

Also im Prinzip so, und von der zweiten der obigen Variante ausgehend:

$table = escape($table);
  $var1 = escape($var1);
  $var2 = escape($var2);
  $var3 = escape($var3);
  $var4 = escape($var4);

...

$sql = "INSERT INTO $table (col1,col2,col3,col4,eingefügt) VALUES " .
         "($var1,$var2,$var3,$var4,$vergessen)";

Auch bei dieser Vorgehensweise muss man sich (unnötigerweise) merken, dass eine Bearbeitung bereits stattgefunden hat, auch wenn das nur wenige Zeilen weiter oben geschieht. Und vor allem muss man es auch sicherstellen. Was ist, wenn du "unten" etwas ergänzen willst, und im Eifer des Gefechts vergisst, "oben" die Bearbeitung einzufügen? Ist es nicht wesentlich auffälliger, wenn stattdessen bei einer Anzahl von mit Escape-Funktionen eingefügten Variablen plötzlich eine solo dasteht?

$sql = sprintf("INSERT INTO %s (col1,col2,col3,col4,eingefügt) VALUES (%s,%s,%s,%s,%s)",
    escape($table),
    escape($var1),
    escape($var2),
    escape($var3),
    escape($var4),
    $vergessen);

echo "$verabschiedung $name";

0 51

Versuche der "feindlichen Übernahme"?

Christoph Schnauß
  • php
  1. 0
    David Tibbe
    1. 0
      Christoph Schnauß
      1. 0
        Karin
        1. 0
          Christoph Schnauß
          1. 0

            total Off Topic

            Karin
            • menschelei
            1. 0
              Christoph Schnauß
              1. 0
                Karin
  2. 0
    Steel
  3. 2
    Karin
    1. 0
      Christoph Schnauß
      1. 0
        Gerti
        1. 0
          Christoph Schnauß
          1. 0
            Gerti
            1. 0
              Johannes Zeller
              1. 0
                Alexander Brock
  4. 0
    zwerg
    1. 2
      Der Martin
    2. 3
      Patrick Andrieu
      1. 0
        Patrick Andrieu
      2. 0
        Christoph Schnauß
      3. 0
        zwerg
  5. 1

    Fazit / nötige Einstellungen?

    Cyx23
    1. 0
      Christoph Schnauß
      1. 0
        Tobias Kloth
        1. 0
          Christoph Schnauß
        2. 0
          Sven Rautenberg
          1. 0
            Christoph Schnauß
            1. 1
              Sven Rautenberg
              1. 1
                Christoph Schnauß
      2. 0
        Cyx23
    2. 2

      PHP - aber sicher

      Marc Reichelt
      1. 0
        Cyx23
        1. 0
          Sven Rautenberg
          1. 0
            Cyx23
            1. 2
              Sven Rautenberg
              1. 0
                Cyx23
                1. 1
                  Sven Rautenberg
                  1. 0
                    Cyx23
                    1. 1
                      Karin
                    2. 0
                      Auge
                      1. 0
                        Cyx23
                        1. 0
                          Auge
                          1. 0
                            dedlfix
                            1. 0
                              Auge
                        2. 1
                          Sven Rautenberg
                  2. 1
                    dedlfix
      2. 0
        Marc Reichelt
        1. 0
          Cyx23
          1. 0
            Marc Reichelt
    3. 2
      dedlfix