更改MySQL中的表是否会影响php页面?
我有一个php页面,可以跟踪用户的登录情况,并将信息存储在phpmyadmin上名为“logins”的表中 现在,它的php代码如下所示更改MySQL中的表是否会影响php页面?,php,mysql,Php,Mysql,我有一个php页面,可以跟踪用户的登录情况,并将信息存储在phpmyadmin上名为“logins”的表中 现在,它的php代码如下所示 $numlogin=mysql\u num\u行($get\u client); 如果($numlogin==1){ $thisid=mysql\u结果($get\u客户端,0,“id”); $thisfore=mysql_结果($get_client,0,“forename”); $thissur=mysql_结果($get_客户端,0,“姓氏”); $t
$numlogin=mysql\u num\u行($get\u client);
如果($numlogin==1){
$thisid=mysql\u结果($get\u客户端,0,“id”);
$thisfore=mysql_结果($get_client,0,“forename”);
$thissur=mysql_结果($get_客户端,0,“姓氏”);
$thiscomp=mysql\u结果($get\u客户端,0,“companyname”);
$ip=$\u服务器['REMOTE\u ADDR'];
$logdate=日期('Y-m-d H:i:s');
$logyear=日期('Y');
$logmonth=日期('m');
$logqtr=ceil($logmonth/3);
$reslog=mysql_query(“插入登录值('''$myid','$loginemail','$thisfore','$thissur','$thiscomp',”,
“$ip”、“$logdate”、“$logyear”、“$logmonth”、“$logqtr”)或die(“错误91”)
不,您不能用您编写的代码安全地将新列添加到logins
表中。您的INSERT
语句没有列出它要插入的列,因此这意味着您必须为所有列提供值。如果更改表列,查询将出错,因为值的数量太多与列数不匹配
这就是为什么在INSERT
查询中应该始终明确。将其更改为:
$reslog = mysql_query("insert into logins (id, userid, email, forname, surname, comp, ip, logdate, logyear, logmonth, logqtr)
values ('','$myid','$loginemail','$thisfore','$thissur','$thiscomp',
'$ip','$logdate','$logyear','$logmonth','$logqtr')") or die("Error 91");
当然,用表的实际列名替换我使用的列名
完成此操作后,您应该能够向表中添加新列,而不会导致代码出错