Когда я повторяю мой SQL запрос он выводитВторя SQL запрос добавляет новую строку
the volunteer id is 312INSERT INTO volunteer_events (event_id, volunteer_id) VALUES ('91
', '312')
Он добавляет новую строку после '91 вместо того, все это в одной строке. Мне было интересно, что я делаю, что заставляет его добавить новую строку.
public function addUserToEvent($event,$volunteer)
{
$event_id = $event;
echo "the event id is ". $event_id;
$volunteer_id = $volunteer;
echo "the volunteer id is ". $volunteer_id;
$sql = "INSERT INTO volunteer_events (event_id, volunteer_id) VALUES ('$event_id', '$volunteer_id')";
echo $sql;
return mysql_query($sql);
}
Я звоню addUserToEvent здесь
if(isset($_POST["events"])){
$eventIds = $_POST["events"];
$N = count($eventIds);
for($i=0; $i < $N; $i++) {
echo "</br>";
echo "The events IDs are";
echo "</br>";
echo($eid = $eventIds[$i]);
$sql = "SELECT distinct v.id
FROM volunteers v
WHERE v.first_name = '$fname'
AND v.last_name = '$lname'
AND v.email = '$email'";
$results = $db->q($sql);
if($row = $results->getAssoc())
{
$vID = $row['id'];
echo "the vid is ". $vID;
}
echo "</br>";
echo " the eid is blah ".$eid;
echo $db->addUserToEvent($eid, $vID);
}
}
'var_dump ($ event_id);' – zerkms
Возможно, что event_id имеет значение «91 \ n», и в этом случае решение проблемы ($ event_id) или typecasting решит проблему. –
BTW, ваш код цикла не идеоматичен, почему бы не 'foreach ($ eventIds as $ eid)'? – Barmar