Einzelnen Beitrag anzeigen

omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: [PHP] $HTTP_SERVER_VARS nicht gefunden

  Alt 26. Apr 2008, 18:33
Zitat von MrSpock:
Dort wird ein sql String zusammengebaut:

Code:
$sql = "INSERT INTO gbook VALUES ('','$datum','$zeit','$_REQUEST["name"]','$_REQUEST["email"]','$_REQUEST["www"]','$_REQUEST["eintrag"]','$_REQUEST["ip"]')";
Grausamer gehts wohl nicht...

Vorschlag:
Code:
function SQLReplace($sql, $params) {
  foreach($params as $name => $value){
    $sql = str_replace(':' . $name, $value, $sql);
  }
  return $sql;
}

$sql =
  "INSERT INTO gbook
   VALUES (:leer, :datum, :zeit, :name, :email, :www, :eintrag, :ip)";

$params['leer']   = "''";
$params['datum']  = "'" . $datum . "'";
$params['zeit']   = "'" . $zeit . "'";
$params['name']   = "'" . $_REQUEST["name"] . "'";
$params['email']  = "'" . $_REQUEST["email"] . "'";
$params['www']    = "'" . $_REQUEST["www"] . "'";
$params['eintrag'] = "'" . $_REQUEST["eintrag"] . "'";
$params['ip']     = "'" . $_REQUEST["ip"] . "'";
$sql = SQLReplace($sql, $params);
Wobei ich da sowieso immer für eine OOP-Lösung wäre, also gleich alles mit Klassen realisieren. Das ist wesentlich übersichtlicher und wartbarer.
Man kann auch mit PHP ordentliche Software produzieren. Stichwort: E_All | E_Strict !

Gruss
Thorsten
  Mit Zitat antworten Zitat