Как правильно strip_tags массив в php - PullRequest
0 голосов
/ 02 мая 2020

Код ниже работает отлично, вставляя значения в базу данных. Когда я пытался удалить все элементы html, он выдавал ошибку о том, что strip_tags должен быть строкой, заданным массивом.

Ниже я рассмотрел это решение, которое предлагает использование функций взрыва, может кто-нибудь мне помочь.

ссылка на источник

//$data1 = strip_tags($_POST["data1"]);

$data1 = $_POST["data1"];
   foreach ($data1 as $key => $value) {


//$data_separated = implode(",", $value);
//echo $data_seperated;



$st = $db->prepare('INSERT INTO content(c1,c2)values(:c1,:c2)');
$st->execute(array( 
':c1' => 'good',
':c2' => $value
));

        }

Ответы [ 2 ]

0 голосов
/ 02 мая 2020

Вы должны добавить strip_tags в foreach(), потому что оттуда вы можете получить доступ к значению массива

Измените свой код на

$data1 = $_POST["data1"];
   foreach ($data1 as $key => $value) {
$strip = strip_tags($value);
$st = $db->prepare('INSERT INTO content(c1,c2)values(:c1,:c2)');
$st->execute(array( 
':c1' => 'good',
':c2' => $value
));

        }
0 голосов
/ 02 мая 2020

Проблема была решена с помощью strip_tags значение перед вставкой внутри для каждого l oop, как предложено Найджел Рен в комментарии

$value_stripped = strip_tags($value);

, следовательно, решение

$data1 = $_POST["data1"];
   foreach ($data1 as $key => $value) {

$value_stripped = strip_tags($value);
$st = $db->prepare('INSERT INTO content(c1,c2)values(:c1,:c2)');
$st->execute(array( 
':c1' => 'good',
':c2' => $value_stripped
));

        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...