So dann versuche ich mal mein Problem zu beschreiben. Ich habe eine index.php auf der auch meine Navigation ist.
und hier wäre der Beispiellink der auf der gleichen Seite ist:
Ich übergebe also var = faculty und die Seite hinzufuegen.php wird geöffnet. Hier speicher ich die Variable dann:
Ich zeige am besten mal den komplette Code der Seite hinzufuegen.php ( ist aber noch alles durcheinander)
wenn varToLoad = hinzufuegen ist, öffnet sich nur ein Teil des Formulars. Hier gibt man dann den Namen der Fakultät an welcher dann in einer Datenbank gespeichert wird. Beim klicken auf den Button wird die Seite ja neu geladen und der Inhalt von varToLoad geht mir verloren. Nun habe ich im Formular einfach "var=faculty" angegeben wenn varToLoad = faculty ist. Diesen Inhalt wollte ich nun im Script speichern und beim klick auf den Button versenden.
und hier wirds in data gespeichert:
hier abgeschickt:
und hier sollte die Variable gespeichert werden:
Ausgegeben hab ich es danahc mit echo allerdings kommt dann nur:"undefined".
Sinn der ganzen Sache soll eigendlich sein, dass ich aus den ganzen Variablen mir mein Insert into zusammenbasteln kann.
Das diente nur als Test und ist noch nicht angepasst. In $sql steht dann z.B. die Tabelle drin. In diesem Fall :"faculty". Aber ich krieg die Variable nicht übergeben. Ich hoffe, dass irgendwer überhaupt versteht was ich machen möchte. Evtl. geht die ganze Geschichte ja viel einfacher aber mir fällt nicht ein wie.
PHP:
$(document).ready(function() {
$('#content').load("login.php","")
$("#menu li a").click(function(){
$contentToLoad = $(this).attr("href");
$varToLoad = $(this).attr("var");
$('#content').load($contentToLoad+".php?varToLoad="+ $varToLoad, "")
return false;
})
});
und hier wäre der Beispiellink der auf der gleichen Seite ist:
PHP:
<li><a var="faculty"href="hinzufuegen">Hinzufügen</a></li>
Ich übergebe also var = faculty und die Seite hinzufuegen.php wird geöffnet. Hier speicher ich die Variable dann:
PHP:
$varToLoad = $_GET['varToLoad'];
Ich zeige am besten mal den komplette Code der Seite hinzufuegen.php ( ist aber noch alles durcheinander)
PHP:
<?php
require_once('checkuser.php');
require_once('dbconnect.php');
?>
<head>
<metacontent="text/html; charset=ISO-8859-1">
</head>
<script type="text/javascript">
$("#stud").click(function(){
$('#content').load("hinzufuegen.php?var=0","")
});
$("#prof").click(function(){
$('#content').load("hinzufuegen.php?var=1","")
});
$("#form").click(function(){
$sql = $(this).attr("var");
var name = $('input[name=fa_name]');
var lastname = $('input[name=lastname]');
var firstname= $('input[name=firstname]');
var studentnumber = $('input[name=matricul]');
var street = $('input[name=street]');
var postcode= $('input[name=plz]');
var city = $('input[name=city]');
var phone= $('input[name=phone]');
var email= $('input[name=email]');
var data = 'lastname=' + lastname.val() + '&firstname=' + firstname.val() + '&studentnumber=' + studentnumber.val() +
'&street=' + street.val() + '&postcode=' + postcode.val() + '&city=' + city.val() +
'&phone=' + phone.val() + '&email=' + email.val() + '&fa_name=' + name.val() + '&sql=' + $sql;
if(lastname.val() !="" && firstname.val() != ""){
$.ajax({
type: "POST",
url: "hinzufuegen.php?Form=sent",
data: data,
success: function(data){
$("#content").html(data);
}
});
}
else{
alert("Fehlende Eingabe");
}
return false;
});
$("#button").click(function(){
$('#content').load("hinzufuegen.php","")
});
</script>
<?php
$a = array("Student","Professor");
$Form = $_GET['Form'];
$var = $_GET['var'];
$varToLoad = $_GET['varToLoad'];
$sql = $_POST['sql'];
echo $sql;
$fa_name = $_POST['fa_name'];
$firstname = $_POST['firstname'];
$lastname =$_POST['lastname'];
$studentnumber = $_POST['studentnumber'];
$street =$_POST['street'];
$postcode = $_POST['postcode'];
$city =$_POST['city'];
$phone = $_POST['phone'];
$email =$_POST['email'];
if($fa_name != ""){$sqlcont ="name"; $sqlvalue=$fa_name; $varToLoad ="faculty";}
if($fistname != ""){$sqlcont= array("Student","Professor");}
if($Form != "sent"){
?>
<form method="post" action="">
<div id="formular">
<?php if($varToLoad == "faculty"){?>
<table>
<tr>
<td colspan="2" style="background-color:#d8d8d8; padding:5px;"><b>Name der Fakultät</b></td>
</tr>
<tr>
<td><input type="text" var ="faculty" name="fa_name" style="width:300px;"></td>
</tr>
</table>
<?php }else{ ?>
<b style="background-color:#d8d8d8; padding:5px;">Person auswählen</b>
<p>
<input id="stud" type="radio" name="person" value="1" <?php if($var == "0"){echo "checked";} ?> >Student<br>
<input id="prof" type="radio" name="person" value="2" <?php if($var == "1"){echo "checked";} ?> >Professor<br>
</p>
<table>
<tr>
<td colspan="2" style="background-color:#d8d8d8; padding:5px;"><b>Neuen <?php echo $a[$var] ?> eintragen</b></td>
</tr>
<tr>
<td >Name*: </td>
<td><input type="text" name="lastname" style="width:300px;"></td>
</tr>
<tr>
<td >Vorname*: </td>
<td><input type="text" name="firstname" style="width:300px;"></td>
</tr>
<tr>
<td style="vertical-align:top;">Fachbereich*: </td>
<td style="text-align:left;">
</td>
</tr>
<tr><td> </td></tr>
<?php if($var == "0"){ ?>
<tr>
<td colspan="2" style="background-color:#d8d8d8; padding:5px;"><b>Weitere Informationen</b></td>
</tr>
<tr>
<td >Matrikel-Nr.: </td>
<td><input type="text" name="matricul" style="width:300px;"></td>
</tr>
<?php
} ?>
<tr><td> </td></tr>
<tr>
<td colspan="2" style="background-color:#d8d8d8; padding:5px;"><b>Optionale Informationen</b></td>
</tr>
<tr>
<td>Strasse: </td>
<td><input type="text" name="street" style="width:300px;"></td>
</tr>
<tr>
<td>Plz: </td>
<td><input type="text" name="plz" style="width:300px;"></td>
</tr>
<tr>
<td>Ort: </td>
<td><input type="text" name="city" style="width:300px;"></td>
</tr>
<tr>
<td>Telefon: </td>
<td><input type="text" name="phone" style="width:300px;"></td>
</tr>
<tr>
<td>Email: </td>
<td><input type="text" name="email" style="width:300px;"></td>
</tr>
<?php } ?>
<tr><td> </td></tr>
<tr>
<td colspan="2"><input id="form" type="submit" value="Speichern">
<input type="reset"></td>
</tr>
<tr><td> </td></tr>
<tr>
<td><?php if($varToLoad!= "faculty"){ echo "*Pflichtangaben";} ?></td>
</tr>
</table>
</div>
</form>
<?php
}
if ($Form == "sent"){
echo " Erfolgreich gespeichert";
$query = "INSERT INTO $varToLoad($sqlcont)
VALUES ('$sqlvalue')";
$result = mysql_query($query);
?>
<button id="button">weitere Person eintragen</button>
<?php
}
?>
wenn varToLoad = hinzufuegen ist, öffnet sich nur ein Teil des Formulars. Hier gibt man dann den Namen der Fakultät an welcher dann in einer Datenbank gespeichert wird. Beim klicken auf den Button wird die Seite ja neu geladen und der Inhalt von varToLoad geht mir verloren. Nun habe ich im Formular einfach "var=faculty" angegeben wenn varToLoad = faculty ist. Diesen Inhalt wollte ich nun im Script speichern und beim klick auf den Button versenden.
PHP:
$sql = $(this).attr("var");
und hier wirds in data gespeichert:
PHP:
var data = ....+ '&sql=' + $sql;
hier abgeschickt:
PHP:
$.ajax({
type: "POST",
url: "hinzufuegen.php?Form=sent",
data: data, ...
und hier sollte die Variable gespeichert werden:
PHP:
$sql = $_POST['sql'];
Ausgegeben hab ich es danahc mit echo allerdings kommt dann nur:"undefined".
Sinn der ganzen Sache soll eigendlich sein, dass ich aus den ganzen Variablen mir mein Insert into zusammenbasteln kann.
PHP:
$query = "INSERT INTO $sql($sqlcont)
VALUES ('$sqlvalue')";
$result = mysql_query($query);
Das diente nur als Test und ist noch nicht angepasst. In $sql steht dann z.B. die Tabelle drin. In diesem Fall :"faculty". Aber ich krieg die Variable nicht übergeben. Ich hoffe, dass irgendwer überhaupt versteht was ich machen möchte. Evtl. geht die ganze Geschichte ja viel einfacher aber mir fällt nicht ein wie.