hallo!
ich habe folgendes problem.
Es wird von einem Formular mittels SESSIOn Variablen Daten auf ein anders Formular bzw Webseite übertragen. Je nach dem was in der Variable "$statusg=$_SESSION['status'];" drinn steht wird eben in der checkbox der Status (Aktiv oder Deaktiviert)vorausgewählt. Jedoch habe ich folgendes Problem.Wenn ich dann den Status verändert habe wird dieser zwar in der Variable $status verändert, doch die checkbox bleibt auf dem Status deakiviert.
Also wenn der Status auf deaktiviert ist und ich klicke auf aktivieren so ist zwar die variable $status verändert aber eben nicht die checkbox auf "Aktivieren" gestellt obwohl die Variablen sich geändert haben.
PHP-Code:
<?
$kurzbeschg = $_SESSION['kurzb'];//Aus dem Vorformular übernommen
$bezeichng = $_SESSION['bez'];//Aus dem Vorformular übernommen
$stellenbeschg = $_SESSION['stellb'];//Aus dem Vorformular übernommen
$freistid = $_SESSION['freistellid'];//Aus dem Vorformular übernommen
$branchfreiidg = $_SESSION['branchfreiid'];//Aus dem Vorformular übernommen
$statusg=$_SESSION['status'];//Aus dem Vorformular übernommen
$okdb = $_POST['okdb'];//Abschlussbestätigung für DB-Request
$status=$_POST['setstatus'];//Übername der Daten aus Radiobutton
$kurzbesch = $_POST['kurzbesch'];//Fo
$bezeich = $_POST['bezeich'];
#$stellenbesch=$_POST['stellenbeschg'];
$stellenbesch = $_POST['FCKeditor1'];
$submit = $_POST['submit'];
$branchid = $_POST['branchid'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="de">
<head>
<meta http-equiv="Content-type" content="text/html ; CHARSET=iso-8859-1"/>
<title>Stellenbearbeitung</title>
<link rel="stylesheet" type="text/css" href="css/edit.css" media="screen"/>
</head>
<body >
<div id="wrap">
<div id="header">
<h3>Stelle bearbeiten</h3>
</div>
<div id="navigation">
<ul id="mainnavi">
<li> <a href="index2.php" title="Zurück ur Startseite">Start</a> </li>
<li> <a href="stellenver wueb.php" title="Stellenverwaltung">Stellenverwaltung</a> </li>
<li> <a href="bewerbverw.php" title="Bewerberverwaltung">Bewerbungsverwaltung</a> </li>
<li> <a href="berufverwueb.php" title="Berufsverwaltung">Berufsverwaltung</a>
<li> <a href="logout.php" title="logout">Logout</a> </li>
</ul>
</div>
<div id="content">
<form action="<? echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" method="post">
<?
if ($back) {
header("Location:editmenu.php");
}
if ($okdb) {
$bezeich = $_SESSION['bezeichs'];
$branchid = $_SESSION['branchids'];
$kurzbesch = $_SESSION['kurzbeschs'];
$stellenbesch = $_SESSION['stellenbeschs'];
$freistid = $_SESSION['freistellids'];
$status=$_SESSION['statuss'];
$stat=$str->makenum($status);
$sql = " UPDATE `db`.`Freistelle` SET `Stellenbeschreib`= '$stellenbesch', `Bezeichnung`= '$bezeich',";
$sql .= "`Kurzbeschreib` = '$kurzbesch', `BranchfreiId`='$branchid', `Status`=$stat WHERE `Freistelle`.`FreistellId`=$freistid";
if ($db->query($sql)) {
echo "<p>Der Eintrag wurde ordnungsmäß geändert und eingefügt</p>";
} else
echo mysql_error();
}
if ($submit) {
$_SESSION['bezeichs'] = $bezeich;
$_SESSION['branchids'] = $branchid;
$_SESSION['kurzbeschs'] = $kurzbesch;
$_SESSION['stellenbeschs'] = $stellenbesch;
$_SESSION['freistellids'] = $freistid;
$_SESSION['statuss']=$status;
switch ($branchid) {
case "1" :
$branchenname = "Baugewerbe";
break;
case "2" :
$branchenname = "Baunebengewerbe";
break;
case "3" :
$branchenname = "gewerblich techn. Bereich";
break;
case "4" :
$branchenname = "kaufmännischer Bereich";
break;
case "5" :
$branchenname = "medizinischer Bereich";
break;
case "6" :
$branchenname = "sonstiges";
break;
}
echo '<fieldset class="edit"> <legend>Speicherung bestästigen</legend>';
echo '<div class="df">';
echo '<p>Daten wie folgt ändern:</p>';
echo '<ul>';
echo '<li>Berufname: ' . $bezeich . '</li>';
echo '<li>Branchenname: ' . $branchenname . '</li>';
echo '<li>Kurzbeschreibung: ' . $kurzbesch . '</li>';
echo '<li>Status: '.$status.'</li>';
echo '</ul>';
echo '<fieldset><legend>Stellenbeschreibung:</legend> ' . $stellenbesch . '';
echo '</fieldset>';
echo '<br/>';
echo '<input type="submit" name="okdb" value="Speichern"/>';
echo '</div>';
echo '</fieldset>';
}
if ($okdb || $submit) {
$fckvalue = $stellenbesch;
} else {
$fckvalue = $stellenbeschg;
}
?>
<fieldset class="edit">
<legend>Berufs und Branchenauswahl</legend>
<div class="df">
<p>
<label>Beruf</label>
</p>
<p>
<input type="text" size="25" name="bezeich"/ value="<? if ($submit || $okdb) {echo $bezeich;} else echo $bezeichng;?>">
</p>
<p>
<label>Status: </label><?if (($submit || $okdb) && $status) echo $status; else echo $statusg?>
</p>
<p>
<?
$statnum=$str->makenum($status);//umwandlung von text auf nummerwerte
$statusgnum=$str->makenum($statusg);//umwandlung von text auf nummerwerte
echo "statnum=$statnum<br>";//testausgabe
echo "statusgnum=$statusgnum<br>";//testausgabe
echo "submit=$submit<br>";//testausgabe
echo "okdb=$okdb<br>";//testausgabe
?>
<input type="radio" name="setstatus" value="aktiv" <?if(($submit )&& $statnum==1 ) {echo "checked=\"checked\" ";} else if ($statusgnum==1){echo "checked=\"checked\" ";} //hier gibts die Probleme?>/> Aktivieren
<input type="radio" name="setstatus" value="inaktiv" <?if (($submit )&& $statnum==0 ) {echo "checked=\"checked\" ";} else if ($statusgnum==0){ echo "checked=\"checked\" ";} ?>/> Deaktivieren
</p>
</div>
?>
Ich hoffe ich konnte das irgendwie herüber bringen. Ist irgendwie schwer zu erklären.
Was ist da der Fehler. Sind das evtl. Seiteneffekt wegen Sessions oder ist einfach nur die Bedingung falsch?
Gruß niesel