Я использую preg_replace
для замены любых символов, помещенных в форму, которую я не хочу, я пробовал читать на preg_replace
, но многие из рассмотренных мной примеров не очень ясны.preg_replace заменить разрешенные символы
В моем коде ниже я использую [^a-z
и т. Д. ..., чтобы указать, какие символы разрешены, а затем ''
- это то, что он должен заменить любые символы, которые не разрешены, но мой код не работал, поэтому я повторил INSERT
, которая должна вводить данные пользователя в базу данных, а большинство полей заменяется на ''
. Может ли кто-нибудь указать мне в правильном направлении?
Спасибо, только c
и e
переменных вставляются в базу данных, e
, поскольку он не использует preg_replace
и c
является выпадающим списком, то u
p
также работать, но все остальное заменяются ' '
, например, я поставил первое имя, как Джо и фамилию как Вейн, но когда я смотрю на эхо заявления они ' '
$u = preg_replace('#[^a-z0-9]#i', '', $_POST['u']);
$e = mysqli_real_escape_string($db_conx, $_POST['e']);
$p = $_POST['p'];
$ln = preg_replace('#[^a-z]#i', '', $_POST['lastName']);
$fn = preg_replace('#[^a-z]#i', '', $_POST['firstName']);
$g = preg_replace('#[^a-z]#i', '', $_POST['g']);
$c = preg_replace('#[^a-z ]#i', '', $_POST['c']);
$m = preg_replace('#[^0-9]#', '', $_POST['m']);
$ci = preg_replace('#[^a-z]#i', '', $_POST['ci']);
$pc = preg_replace('#[^a-z0-9]#i', '', $_POST['pc']);
$rs = $_POST['relationshipStatus'];
$d = $_POST['d'];
Что дает эхо $ e или echo $ ci? – bart2puck
Я использую это в форме, и когда я эхо $ e, он дает мне адрес электронной почты, который я ввел, и когда я эхо $ c, он отображает страну, которую я выбрал из раскрывающегося списка, но все, что я вхожу, похоже, заменяется на '' – Joey93
Вы подтвердили, что '$ _POST ['u']' не пуст, когда он попадает на сервер? –