您好如何为此编写php代码,我的文件包含数据列表,例如
AA123_jane_G-1
AA456_oshi_K-3
AA789_pritt_P-4
我使用
读取了我的文件function myfile(){
while (($data = fgetcsv($handle, 1000, "_")) !== FALSE) {
..................
........
.......
//get $student_id, $name, $class,
}
我需要使用来自文件
的student_id获取用户名和密码function getusernameandpassword($student_id){
........
.......
$result = mysql_query("SELECT student_id, username, password FROM account WHERE student_id= '".$student_id."'");
........
//get $username and $password from other remote server
....... }
执行both函数后,我想收集该学生的所有信息并插入DB
function insertDB(){
........
.......
mysql_query("INSERT INTO user_info
(student_id, username, password, name, class) VALUES ($student_id,$username,$password,$name,$class)")
........
.......
//insert all the paramater get from both function for each student to localhost DB}
我的问题,如何使用php在1个脚本中编写此函数。如何返回值以及如何获取其他函数的输入值
答案 0 :(得分:0)
要在函数外部使用函数变量,要么返回变量并将其分配给另一个变量,要么在函数内部将所需变量设置为global
,例如:
function test(){
global $variable;
}
然后您可以在脚本内的任何位置使用它。
答案 1 :(得分:0)
首先使用已弃用的mysql函数停止使用PDO。同样返回您的字段/列/表格以避免与保留字冲突
如果我理解你应该能够在单个SQL语句中执行此操作,如
'INSERT INTO `user_info`(`student_id`, `username`, `password`, `name`, `class`)
SELECT `student_id`, `username`, `password`, '.$name.','.$class.' FROM `account` WHERE `student_id`= '.$student_id.')'
有关INSERT...SELECT语法
的更多信息,请参阅此处通过选择传递给查询字符串的变量(即名称和类),您还可以插入帐户表中不可用的信息(我猜您是从文本文件中获取的)
答案 2 :(得分:0)
你可以使用数组
function getusernameandpassword($student_id) {
....
return array('username' => $username, 'password' => $password);
}
function insertDB($infos){
....
mysql_query("INSERT INTO user_info (student_id, username, password, name, class) VALUES ($student_id, {$infos['username']}, {$infos['password']}, $name, $class)");
....
}
或者你可以使用对象
function getusernameandpassword($student_id) {
....
return (object)array('username' => $username, 'password' => $password);
}
function insertDB($infos){
....
mysql_query("INSERT INTO user_info (student_id, username, password, name, class) VALUES ($student_id, {$infos->username}, {$infos->password}, $name, $class)");
....
}
@ mike-miller是对的,停止使用已弃用的mysql函数