Если переписать url с .htaccess, весь запрос INSERT с php выполняется дважды (нежелательное дублирование)
Мой .htaccess :
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
И index.php :
<?php define('DB_LOGIN', 'mylogin'); define('DB_PASS', 'mypass'); define('DB_HOST', 'localhost'); define('DB_TYPE', 'mysql'); define('DB_NAME', 'dbname'); $mysql = MySQL_Connect(DB_HOST, DB_LOGIN, DB_PASS); $mysql_db = MySQL_Select_DB(DB_NAME); mysql_query("INSERT INTO `pages` (`title`, `slug`) VALUES ('TEST', 'test')"); ?>
После одной загрузки index.php у меня есть две одинаковые записи в mysql. Все в порядке, когда я удаляю .htaccess, поэтому проблема должна быть там. Определение перезаписи в .htaccess взято из WordPress – мне это нравится.
Я использую среду Medoo, но записи все еще повторяются.
Итак, любое предложение? 🙂
Браузеры автоматически запрашивают файл favicon.ico по умолчанию.
Но у вас нет файла favicon.ico, поэтому он перезаписывается (правило в вашем htaccess).
Вот почему вы дублируете выполнение.
Решения:
Кроме того, вы можете установить первичный или уникальный ключ в вашей таблице SQL (например, «title»). Только это предотвратит любые повторяющиеся записи.