可以做一些事情来改进你的脚本。由于您的问题如此广泛,我将指出其中的一些..
第一的..
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
可以简写为
$con = mysql_connect("localhost","root","") or die('Could not connect: ' . mysql_error());
其次,您忘记在mysql_query()
. 尽管此参数是可选的,但顺便说一下,您已经获得了变量名 ( $sql15
),我假设您可能有多个连接。
$result5=mysql_query($sql5, $con);
另外,我不确定你在这里做什么..
$sql5 = ("SELECT dept from `user_pwd` WHERE name = '$myusername'");
就我所知,你的语法可能完全有效,但我以前从未见过这样定义的字符串,快速的谷歌搜索也没有显示任何东西..所以你可能想把它改成..
$sql5 = "SELECT dept from `user_pwd` WHERE name = '$myusername'";
接下来,在调用数据之前关闭连接。您可能希望将mysql_close()
下移到 AFTER 之后的行$myvars3 = 'department='.$row5['dept'];
哦,您正在使用mysql_fetch_array()
然后将其称为关联数组 ( $row5['dept']
)。为了安全起见,像这样更改$row5=mysql_fetch_array($result5);
或$row5=mysql_fetch_assoc($result5);
添加关联数组结果类型。$row5=mysql_fetch_array($result5, MYSQL_ASSOC);
最后,我们将解决您的数据上传问题。
我不知道您是如何解决的,但您基本上是在获取一个网页并将其分解为一个数组,无论哪里有逗号,并尝试将该数组上传到表格中。除非您确切知道该页面上出现了多少逗号,并且您知道该数字与表中的列数相匹配,否则这是一个非常糟糕的主意。我不知道您要完成什么,但我向您保证,有更好的方法。
并回答你实际的问题.. 插入行的 SQL 语法是 "INSERT INTO table (column1, column2) VALUES ('value1', 'value2')";
最后注..您使用的是旧 API,请切换到 PDO。在此处查看大红色警告
所以,把它们放在一起......
session_start(); // NEVER forget this!
$con = mysql_connect("localhost","root","") or die('Could not connect: ' . mysql_error());
mysql_select_db("webauth", $con);
$myusername = $_SESSION['myusername'];
//$result = mysql_query("SELECT * FROM user_pwd");
$sql5 = "SELECT dept from `user_pwd` WHERE name = '$myusername'";
$result5=mysql_query($sql5, $con);
$row5=mysql_fetch_assoc($result5);
// echo "<br />";
$url3 = 'http://localhost:1090/WebEmpLoad.hal';
$myvars3 = 'department='.$row5['dept'];
mysql_close($con);
$ch3 = curl_init( $url3 );
curl_setopt( $ch3, CURLOPT_POST, 1);
curl_setopt( $ch3, CURLOPT_POSTFIELDS, $myvars3);
curl_setopt( $ch3, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt( $ch3, CURLOPT_HEADER, 0);
curl_setopt( $ch3, CURLOPT_RETURNTRANSFER, 1);
$response3 = curl_exec( $ch3 );
//echo $response3;
$arr = (explode(',',$response3,100));
$Num = sizeof($arr);
$rows = ($Num - 1)/2;
echo $rows;