Vänder mig med förtroende till er igen i nästa fastkörning
Har ett formulär som ser ut såhär (mycket fler, men jag tar med några som exempel)
Namn: <textfield>
Email: <textfield>
Telefon: <textfield>
Kontaktperson <drop down> Lägg till
(drop down läser av tabellen contacts och listar de alternativ som finns där.
Lägg till, är en länk. Där ytterligare fält kommer fram, om man vill lägga till en ny kontaktperson. (sname, scompany, sperson)
En del av koden... (kan säkert va nåt fel, då jag klippt ut det relevanta)
$name=$_POST['name'];
$email=$_POST['email'];
$phone=$_POST['phone'];
$scontact=$_POST['scontact'];
mysql_query("INSERT INTO `form01` VALUES ('$name', '$email', '$phone','$scontact', )") ;
if(trim($_SESSION['sname']) == '') {}else{
$sql09 = sprintf("INSERT INTO contacts (name, company, cperson) VALUES (%s, %s, %s)",
qs($_SESSION['sname']),
qs($_SESSION['scompany']),
qs($_SESSION['sperson']));
mysql_query($sql09) or die('Fel 02: ' . mysql_error());
Som ni ser, om fälten med NY kontaktperson inte är ifyllda, så sparas inte heller nåt till databasen.
Men om de är ifyllda, så sparas de helt korrekt till databasen.
MEN. Detta formulär skapar möten, så när man kör formuläret så sparas all info om mötet, den nya kontaktpersonen om den är ifylld.
Problemet jag har är att jag vill att den nya kontaktpersonen ska sparas, och inte den som är vald i drop-down listan ovan.
Koden för drop-down ser ut såhär
<select name="scontact" class="select">
<?php
while ($row_contacts = mysql_fetch_assoc($result_contacts)) {
echo '<option value="' . $row_contacts['id'] . '"';
if (isset($_SESSION['event_contact']) && $_SESSION['event_contact'] == $row_contacts['id']) { //lite luddig rad
echo ' selected';
}
echo '>' . $row_contacts['name'] . '</option>';
}
?>
Den luddiga raden kanske ni inte behöver bry er om så mycket, skulle behöva lasta in 300 rader kod för hela systemet, men försöker fokusera på det jag fastnat på
Och funktionen
<?php
$sql_contacts = "SELECT id, name FROM contacts WHERE user = '{$_SESSION['id']}' ORDER BY name";
$result_contacts = mysql_query($sql_contacts) or die('Error _contacts: ' . mysql_error());
$rows_contacts = mysql_num_rows($result_contacts);
if ($rows_contacts == 0) {
$_SESSION['error'] = 114;
header('Location: contacts.php?' . SID);
exit();
}
?>
Någon som förstår vad jag försöker göra och kan hjälpa mig fatta nåt
Edit:
Det jag kommer på är nåt i stil med detta
select id, name from `contacts` where `id`=(select max(`id`) from contacts) and user = '{$_SESSION['id']}';
Och använda resultatet där för att uppdatera "form01" contact fält?