Итак, когда я получаю GET / POST, я добавляю в каждую переменную функцию htmlentities?
Нет необходимости. Однако вы должны использовать htmlentities
при выводе пользовательских данных в браузер, чтобы предотвратить атаки XSS.
Что заменит mysql_real_escape_string? Должен ли я использовать это?
Вы не должны использовать mysql_real_escape_string
, поскольку это для MySQL. Ничто не заменит этого на MongoDB, драйвер позаботится о том, чтобы экранировать данные за вас.
Есть ли способ проверить, является ли строка действительно UID?
Единственный способ проверить его - запросить MongoDB с этой строкой и проверить, существует ли она.
Однако вы можете проверить правильность формата :
$id = '4f1b166d4931b15415000000';
$a = new MongoId($id);
var_dump($a->{'$id'} == $id); // true
$id = 'foo';
$a = new MongoId($id);
var_dump($a->{'$id'} == $id); // false
Кто-нибудь еще думает, что я должен знать об использовании MongoDB и PHP? Я получаю свои куки, используя JavaScript, и ищу в моей БД, используя куки. Как насчет этого?
Не очень. Как и для любого веб-приложения, вам не рекомендуется хранить конфиденциальные данные в файлах cookie, такие как идентификаторы пользователей, пароли и т. Д., Так как они могут быть легко изменены и использованы для доступа к частям вашего приложения, которые должны быть ограничены, или выдавать себя за других пользователей. .