gpt4 book ai didi

php - 使用 .htaccess 重写 URL 使重复的 mysql 条目

转载 作者:可可西里 更新时间:2023-11-01 07:39:54 26 4
gpt4 key购买 nike

如果使用 .htaccess 重写 url,所有使用 php 的 INSERT 查询都会执行两次(不需要的重复)

我的.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 中的规则)。
这就是您有重复执行的原因。

解决方案:

  1. 添加一个 favicon.ico 文件
  2. 如果请求的 url 是图标,不要插入(在 index.php 中)
  3. 在您的 htaccess 中使用规则禁止它

关于php - 使用 .htaccess 重写 URL 使重复的 mysql 条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21182407/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com