php array_walk_recursive не работает с массивом результирующих наборов mysql с полосками - PullRequest
0 голосов
/ 12 марта 2012

У меня есть массив результатов mysql, и я пытаюсь очистить массив с помощью array_walk.Это не убирает косые черты из MySQL.Он работает с массивом, который я добавил вручную ($ dataArr ['xxx']), хотя.

Вот мой код:

<code>$sql = ' select * from `ads` where id = 3 ';
$res = mysql_query($sql, $conn) or die(mysql_error());
$row = MYSQL_FETCH_ASSOC($res);

$dataArr = $row;

$dataArr['xxx'] = '<script type=\'text/javascript\'><!--//<![CDATA[
           var m3_u = (location.protocol==\'https:\'?\'https://ads.test.com/www/delivery/ajs.php\':\'http://ads.test.com/www/delivery/ajs.php\');
           var m3_r = Math.floor(Math.random()*99999999999);
           if (!document.MAX_used) document.MAX_used = \',\' etc.... etc....;
         ';
array_walk_recursive($dataArr, 'stripslashes');
print '<pre>'; print_r($dataArr); print '
';

1 Ответ

0 голосов
/ 12 марта 2012

Некоторые рекомендации:

1) Удалите начальные и конечные пробелы в вашем запросе.

2) mysql_fetch_assoc должны быть в нижнем регистре.

3) Голыйпомните, что mysql_fetch_assoc возвращает только одну строку за раз.Вам нужно работать с циклом while, чтобы получить все результаты.См. Примеры в документации .

4) Вы можете предпочесть использовать mysql_fetch_array вместо mysql_fetch_assoc.Смотри здесь .

...