我正在尝试修复一个对seo友好的url脚本,它几乎可以正常工作,但我的大脑几乎无法理解为什么我在MySQL中得到了错误的值
脚本使用以下值准备要插入的变量:
$date=date("Ymd");
$newtitle=string_limit_words($title, 6);
$urltitle=preg_replace('/[^a-z0-9]/i',' ', $newtitle);
$newurltitle=str_replace(" ","-",$newtitle);
这并不奇怪,但现在我正在修复以下变量以准备mysqli插入,这是有问题的一个:
$url='news/'.$date.'/'.$newurltitle.'';
要提交查询,我使用以下代码:
mysqli_query($con,"insert into blog(title,body,url)
values('$title','$body','$url')");
}
保存在MySQL中的结果应该是这样的:
news/20221021/this-is-an-example-url
但我在MySQL中保存的结果是:
news/.$date./.$newurltitle.
所以这些值没有传递,我尝试使用$url='news/'$date.'/'$newurltitle.'';和$url='news/'.$date'/'$newurltitle“”;但他们中没有人会工作。你知道为什么吗?
1条答案
按热度按时间inn6fuwd1#
如果你发布的代码准确,我无法解释你得到的结果。如果你写的话,你会得到这个结果
因为变量不在单引号内展开。然而,你可以简单地用双引号来写。