) (show mysql_real_escape_string array_map bekliyor parametre 1 [yinelenen]

2 Cevap php

Possible Duplicate:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in select

i kullandığınızda

array_map('mysql_real_escape_string', $_POST);

it display

    Warning: mysql_real_escape_string() expects parameter 1 to be string, array given in D:\xampp\htdocs\...\...\xyz.php on line 14

bundan sonra sebebi nedir?

EDIT: and if i use

array_walk_recursive($_POST, 'mysql_real_escape_string');

o görüntüler

Warning: mysql_real_escape_string() expects parameter 2 to be resource, integer given in D:\xampp\htdocs\..\...\xyz.php on line 17

please also tell me the difference above both method? Thank You in advance

2 Cevap

Ben böyle bir şey görüntülendi arasında unsurlarından biri $_POST gerçekten bir dizi olduğunu varsayalım:

print_r($_POST);

Array
(
 ...
    'element' => Array
    (
        'subelement' => 'some value'
    )
 ...
)

array_map mysql_real_escape_string, bu tarif hata atar için $_POST['element'] değerini vermeye çalıştığında.

Sen, olsa çağrıyı kaydırmak için bu (denenmemiş) fonksiyonu boyunca bir şey deneyebilirsiniz:

function recursive_escape(&$value) {
    if (is_array($value))
        array_map('recursive_escape', $value);
    else
        $value = mysql_real_escape_string($value);
}

array_map('recursive_escape', $_POST);

Sizin değerlerinin üzerine $_POST bir dizi olması mümkün mü?

Form gibi bir şey görünüyor:

<input type="text" name="value[]">

veya adları herhangi onlara [] var? Bu bir dizi $_POST veri olması neden olur.

var_dump sizin $_POST ing deneyin ve değerlerden herhangi diziler olup olmadığını görmek.

Bir dizi mysql_real_escape_string parametre olarak bir dizi almayacağız gibi, o zaman bir sorun var. Hangi durumda özyinelemeli bunu yapmak için cassy işlevine bakmak isterim.


Siz iki fonksiyon arasındaki farkı bulmak için belgeleri okuyarak denemek isteyebilirsiniz:

array_walk_recursive olarak array_map yok iken onun, ikinci parametre olarak bir anahtar recieves geçirilen fonksiyonu.

(PHP gerçekten büyük belgelerine sahiptir. Kullanın.)