множественный запрос использует набор результатов предыдущего запроса в одном файле php - PullRequest
0 голосов
/ 09 февраля 2012

Я пытаюсь использовать значение, которое я получаю из запроса MySQL, а затем выполнить вставку, но оно не работает.Я получаю синтаксическую ошибку, но запрос на вставку правильный.

Запрос на выборку повторяет сумму, которую я проверяю, и тогда программа должна выполнить запрос на вставку.

    <?php
require 'header.php';

$resID = mysql_real_escape_string($_POST['resID']);
$materialen_id = mysql_real_escape_string($_POST['materialen_id']);
$aantal = mysql_real_escape_string($_POST['aantal']);
$effectief_gebruikt = mysql_real_escape_string($_POST['effectief_gebruikt']);
$opmerking = mysql_real_escape_string($_POST['opmerking']);
//$datum_van = date('d-m-Y', $_POST['datum_van']);
//$datum_tot = date('d-m-Y', $_POST['datum_tot']);
$datum_van = $_POST['datum_van'];
$datum_tot = $_POST['datum_tot'];


$sql = "SELECT `aantal_beschikbaar` 
        FROM `materialen` 
        WHERE `id` = $materialen_id";

$result = mysql_query($sql) or die(mysql_error());

while ($row = mysql_fetch_array($result))
{
    $tot = $row['aantal_beschikbaar'];
    echo 'totaal: ' . $tot;
}



$sql2 = "SELECT `aantal` FROM `materialen_per_reservatie`
        WHERE `materialen_id` = $materialen_id";  
$result2 = mysql_query($sql2) or die(mysql_error());

while ($row = mysql_fetch_array($result2))
{
    //$aant = $row['aantal'];
    //echo $aant
    echo $row['aantal'];
}

$besch = ($tot - $aant);
echo 'beschikbaar: ' . $besch;



/*$sql3 = "SELECT * FROM `materialen_per_reservatie`
        WHERE `reservaties_id` = $resID
        AND   `materialen_id` = $materialen_id";
$result3 = mysql_query($sql3) or die(mysql_error());*/

if($besch > $aantal){



        $string2 = "INSERT INTO `materialen_per_reservatie`(`reservaties_id`, `materialen_id`, `aantal`, `effectief_gebruikt`, `opmerking`, `datum_van`, `datum_tot`) VALUES ($resID, $materialen_id, $aantal, $effectief_gebruikt, '$opmerking', '$datum_van', '$datum_tot')";
        mysql_query($string2) or die(mysql_error());  


}      

require 'footer.php';
?>

1 Ответ

1 голос
/ 09 февраля 2012

При условии, что ошибка только на запросе вставки ...

В запросе на вставку отсутствует необходимый пробел:

INSERT INTO `materialen_per_reservatie` (`reservaties_id`, `materialen_id`, `aantal`, `effectief_gebruikt`, `opmerking`, `datum_van`, `datum_tot`) VALUES ($resID, $materialen_id, $aantal, $effectief_gebruikt, '$opmerking', '$datum_van', '$datum_tot')

Добавить пробел после materialen_per_reservatie. И я не уверен, что вам нужны все цитаты.

INSERT INTO materialen_per_reservatie (reservaties_id, materialen_id, aantal, effectief_gebruikt, opmerking, datum_van, datum_tot) VALUES ($resID, $materialen_id, $aantal, $effectief_gebruikt, '$opmerking', '$datum_van', '$datum_tot')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...