Неизвестная ошибка при размещении текста с веб-сайта в базу данных [дубликат]

Имейте в виду, когда вы раскалываетесь «словом» в любом месте, где некоторые языки, такие как китайский и японский, не используют пробельный символ для разделения слов. Кроме того, злоумышленник может просто вводить текст без каких-либо пробелов или использовать какой-либо Юникод похожим на стандартный символ пробела, и в этом случае любое используемое вами решение может в конечном итоге отобразить весь текст. Путь вокруг этого может состоять в том, чтобы проверить длину строки после ее расщепления на пространствах как обычно, тогда, если строка все еще находится над аномальным пределом - может быть, 225 символов в этом случае - вперед и небрежно раскалывает ее в этом пределе.

Еще одно предостережение в таких вещах, когда речь идет о символах, отличных от ASCII; Строки, содержащие их, могут быть интерпретированы стандартным параметром PHP strlen () как длиннее, чем они есть на самом деле, поскольку один символ может принимать два или более байта вместо одного. Если вы просто используете функции strlen () / substr () для разделения строк, вы можете разбить строку в середине символа! Если есть сомнения, mb_strlen () / mb_substr () являются немного более надежными.

0
задан Magnus Eriksson 2 March 2019 в 03:19
поделиться

2 ответа

mysqli_connect ( "123.45.678.901", "пользователь", "пароль", "DatabaseName").

В приведенной выше строке вы должны указать фактическое имя базы данных, имя пользователя Mysql и соответствующий пароль. Вы сохранили значения статическими, что приведет к ошибке.

Спасибо

0
ответ дан Man87 2 March 2019 в 03:19
поделиться

Сколько полей у вас в таблице Email_Subs?

Если ваших ответов больше одного, ваш запрос никогда не будет работать.

Запрос INSERT имеет несколько морфологий. Случай, когда вы можете опустить имена полей, имеет место только тогда, когда вы передаете значения всех полей в том же порядке, в котором они появляются в определении таблицы.

Если ваш стол выглядит так ...

+------+---------+
| id   | email   |
+------+---------+

Тогда запрос вставки может быть одним из следующих:

  1. INSERT INTO Email_Subs (email) VALUES ($ someSanatizedData)
  2. INSERT INTO Email_Subs (id, электронная почта) VALUES ($ someUniqueId, $ someSanatizedData)
  3. INSERT INTO Email_Subs (email, id) VALUES ($ someSanatizedData, $ someUniqueId)
  4. INSERT INTO Email_Subs VALUES ($ someUniqueId, $ 114]
  5. ... и многие другие
0
ответ дан asiby 2 March 2019 в 03:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: