Versio

rare tekens aan einde query

Overzicht Reageren

Nils Kuijpers

Nils Kuijpers

01/10/2008 16:14:00
Quote Anchor link
Dag,

Raar probleem, de volgende waarde inject ik in mijn database:

GetSQLValueString($_POST['Garantie'], "text"),

(dit is een klein gedeelte), hier volgt de functie getsqlvaluestring():

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
    function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
    {
      $theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;
    
      switch ($theType) {
        case "text":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;    
        case "long":
        case "int":
          $theValue = ($theValue != "") ? intval($theValue) : "NULL";
          break;
        case "double":
          $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
          break;
        case "date":
          $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
          break;
        case "defined":
          $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
          break;
      }
      return $theValue;
    }


Dit werkt allemaal prachtig, en als ik het vervolgens select en print is het allemaal goed, maar als ik kijk en de query browser blijkt dat er achter elk ingevoerd veld een enter en een paar spaties staan. Hoe kan ik dat voorkomen?
 
PHP hulp

PHP hulp

25/05/2012 14:07:21
Gesponsorde koppelingen:
BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  
 
- SanThe -

- SanThe -

01/10/2008 16:27:00
Quote Anchor link
Dat ligt niet aan de functie.
Je zou er in de functie misschien eerst even een trim() over kunnen halen.
 
Nils Kuijpers

Nils Kuijpers

01/10/2008 16:29:00
Quote Anchor link
SanThe, had ik al geprobeerd, had ik even moeten melden. Ik heb de volgende functies er al overheen laten gaan:

trim()

mysql_real_escape_string()

htmlentities()

htmlspecialchars()

str_replace() // spaties weghalen, resulteert in hetzelfde
 
- SanThe -

- SanThe -

01/10/2008 16:39:00
Quote Anchor link
Dan moet je gaan zoeken wanneer die er bij komen. Dus overal een echo zetten, vóór, in en ná de function.
 



Overzicht Reageren

Get Adobe Flash player