没有输出奇怪的输出(SQL / PHP)

时间:2013-12-11 12:44:55

标签: php sql

你好我制作了一个脚本,将两个id组合成一个id,然后将它与价格进行比较。输出将是id和价格。

但是脚本确实可以达到99%,但输出的是数组,而不是价格。我做错了什么?

<?php //data.php
require_once 'login.php'; 

// Get values from form
$Fname       = $_POST['first_name'];
$Lname       = $_POST['last_name']; 
$sex         = $_POST['sex'];   
$email       = $_POST['email'];
$password    = $_POST['password']; 

$data1 = $Lname;
$data2 = $sex;
$id =  $data1 . $data2;

$query =  "
SELECT prijs
FROM prijzen
WHERE broodje='".$id."'";

$result = mysql_query($query);



// Insert data into mysql
$sql="INSERT INTO users (first_name, last_name, sex, email, password, registration_date)
VALUES ('$Fname', '$Lname', '$sex', '$result', SHA1('$password'), NOW())";
$result = mysql_query($sql); 

// if successfully insert data into database, displays message "Successful".
if($result){
header('Location: ../index.php');
}
else {
echo "ERROR";
}

// close mysql
mysql_close();
?> 

2 个答案:

答案 0 :(得分:1)

您需要在查询上调用mysql_fetch_assoc以将数据作为数组获取,然后适当地访问价格:

if ($resource = mysql_query($query))
{

  $result = mysql_fetch_assoc($resource);

  $price = $result['prijs'];

}

答案 1 :(得分:0)

'mysql_query()'函数在成功时总是返回数组。


$result = mysql_query($query);
if($result)
{
    $price = mysql_result($result, 0);
}

现在在插入查询中传递$ price而不是$ result

或使用“mysql_fetch_array()”函数进一步从$ result中检索欲望数据。

Refe: - 1)http://ie1.php.net/manual/en/function.mysql-result.php 2)http://ie1.php.net/manual/en/function.mysql-query.php