【发布时间】:2017-07-13 01:16:30
【问题描述】:
我正在尝试制作时事通讯。用户必须填写一个表格,其中$emaila 是他的电子邮件。
<?php
$emaila="test@test.com";
$con=mysqli_connect("localhost","user","pass","dbname");
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$val = mysqli_query("select $emaila from emails limit 1");
if($val !== FALSE)
{
mysqli_query($con,"ALTER TABLE emails ADD (".$emaila." VARCHAR(100))");
mysqli_close($con);
}
?>
它假设检查电子邮件是否已经在“电子邮件”表中作为列,如果不是,则应该将他的电子邮件作为列放在表中。不知道我做错了什么......
【问题讨论】:
-
test@test.com这真的是一个专栏吗?$val = mysqli_query("select这里没有连接 -
应该是一列。如果不是,则应添加。
-
select $emaila from emails转换为select test@test.com from emails。检查查询mysqli_error($con)中的错误,您会看到。但这永远不会发生,因为您没有将连接传递给查询。 -
如果您选择这样,如果该列不存在,您将收到错误消息。那没有意义。您想为每封没有列的电子邮件添加一列?这也没有意义。
-
这个问答stackoverflow.com/q/22399477/1415724可以帮助你。然后,您可以将该
.csv文件放入Excel 中并对其进行修改,然后以某种方式重新导入phpmyadmin,或者使用PHP php.net/manual/en/function.fgetcsv.php 对其进行解析。另见stackoverflow.com/q/16391528/1415724 和mysqltutorial.org/mysql-export-table-to-csv