| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

06-08-2009, 15:32
|
|
Sakin
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 12
|
|
Auf checkbox prüfen
Moin,
ich möchte, wenn die checkbox gesetzt ist, ein ja in die Datenbank schreiben und wenn sie nicht gesetzt ist, ein nein.
Ich kann einwandfrei in die Datenbank schreiben, nur die Prüfung ob die checkbox gesetzt ist funktioniert nicht, da er immer ja reinschreibt.Was habe ich falsch gemacht?
Ich möchte zusätzlich, wenn das Formular ausgefüllt ist eine Druckversion anbieten wo, die Inhalte nicht mehr in der Textbox stehen und somit nicht mehr verändert werden können. Wie mache das?
Ich danke schon mal für die antworten.
PHP-Code:
<?php function validateFormField($name, $bezeichnung, $required = 0) { // Wenn das Feld nicht ausgefüllt wurde, gibt es zwei Möglichkeiten... if (!isset($_POST[$name]) || trim($_POST[$name]) == "") { // Pflichtfeld: FEHLER!! if ($required == 1) { $out = ""; // $GLOBALS['msgArr'][] = new Msg('Bitte das Feld \''.$bezeichnung.'\' ausfüllen!', 1); // Kein Pflichtfeld: Na gut, weiter. } else { $out = ""; } // Formular wurde vorbildlich ausgefuellt :-) } else { $out = trim(str_replace('<', '<', $_POST[$name])); } return $out; }
//Funktion einbinden require_once ('inc.functions.php'); //Datenbank verbinden require ('db_connect.php');
//Variablen Definition $vorname = ''; $personen_id = ''; $geraet_id = ''; $durchwahl = ''; $handynummer = ''; $person_id = ''; $id = ''; $geraettyp = ''; $row = '';
// Submit-Schaltfläche der Eingabemaske wurde betätigt if (isset($_POST['submit_mitarbeitereingabe']) && $_POST['submit_mitarbeitereingabe']) { $vorname = validateFormField('vorname', 'vorname', 1); $nachname = validateFormField('nachname', 'nachname', 1); $geburtsdatum = validateFormField('geburtsdatum', 'geburtsdatum', 1); $ort = validateFormField('ort', 'ort', 1); $molfsee= validateFormField('molfsee', 'molfsee', 0); $airbus= validateFormField('airbus', 'airbus', 0); If ($molfsee= "ja" ) { $molf= "ja"; } If ($molfsee= "nein" ) { $molf="nein"; } If ($airbus= "ja") { $airbus= "ja"; } Else { $airbus="nein"; } //SQL statement zum Befüllen der Datenbank-Tabelle Handy mit dem Inhalt der Benutzereingaben $sql = " INSERT INTO `verantstaltungen`(`vorname`,`name`,`ort`,`geburtsdatum`,`molfsee`,`hamburg`) Values('".$vorname."','".$nachname."','".$ort."','".$geburtsdatum."','".$molf."','".$airbus."')"; $msg = 'Die Verantstaltung wurde angemeldet'; // SQL-Kommando ausführen $db_erg = mysql_query($sql) or die(mysql_error().':<pre>'.$sql.'</pre>'); @header('Location: http://'.$_SERVER['HTTP_HOST'].'/auto/redirect.php?ref='.$_SERVER['PHP_SELF'].'&msg='.$msg);
echo $msg; if ($_GET['msg'] != '') { echo $_GET['msg']; } }
//Onlineformular zum füllen der Handy-Tabelle ?> <html> <head> </head> <body> <form id="form" name="form" method="post"> <!--<table border="0" cellpadding="1" cellspacing="2">--><b>Formular zum Anmelden bei Verantstaltungen</b> <table width="100%"> <tr> <td> Vorname </td> <td> <input name="vorname" size="30" type="text" value="<?= $vorname ?>"> </td> </tr> <tr> <td> Nachname: <td><input name="nachname" size="30" type="text" value="<?= $nachname ?>"></td> </td> </tr> <tr> <td> Ort: <td><input name="ort" size="30" type="text" value="<?= $ort ?>"></td> </td> </tr> <tr> <td> Geburtsdatum: </td> <td> <input name="geburtsdatum" size="30" type="text" value="<?= $geburtsdatum ?>"> </td> </tr> <tr> <td> Verantstaltung: </td> </tr> <tr> <input name="molfsee" size="30" type="checkbox" value="<?= $molfsee?> ' checked' : ''">Molfsee <tr> <input name="airbus" size="30" type="checkbox" value="<?= $airbus?> ' checked' : ''">Airbus </td> </tr> <tr> <td colspan="2"> <input name="submit_mitarbeitereingabe" type="submit" value="Abschicken"> </td> </tr> </tabel> </form> </body> </html>
Gruß Niklas
|

06-08-2009, 15:49
|
|
mkb_webprint
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 53
|
|
Sorry wegen dem Doppelpost, bitte diesen Beitrag löschen wenn ein Mod/Admin vorbeischaut.
Geändert von mkb_webprint (06-08-2009 um 15:57 Uhr)
|

06-08-2009, 15:55
|
|
mkb_webprint
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 53
|
|
Zitat:
Zitat von Sakin
PHP-Code:
If ($molfsee= "ja" ) { $molf= "ja"; } If ($molfsee= "nein" ) { $molf="nein"; } If ($airbus= "ja") { $airbus= "ja"; } Else { $airbus="nein"; }
|
Der schreibt immer Ja rein, weil du den Variablen immer Ja als Wert gibts! Es muss heissen
PHP-Code:
if($variable == 'ja') { $variable2 = "ja"; }
Ok?
Geändert von mkb_webprint (06-08-2009 um 15:58 Uhr)
|

06-08-2009, 16:37
|
|
Sakin
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 12
|
|
Moin,
er trägt nun leider weder ja noch nein in die Datenbank, egal ob die Box markiert ist oder nicht.
Gruß Niklas
|

06-08-2009, 18:35
|
|
Sakin
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 12
|
|
Moin,
dass ist die Lösung:
PHP-Code:
If ($molfsee== true ) { $molf= "ja"; } Else { $molf="nein"; } If ($airbus== true) { $airbus= "ja"; } Else { $airbus="nein"; }
Danke für den Tipp.
Ich weiß nur noch nicht wie ich es mit dem Druckformular löse.
Gruß Niklas
|

06-08-2009, 18:45
|
|
mkb_webprint
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 53
|
|
Von dem Code ausgehend den du gepostet hast, wäre es eine Möglichkeit die eingegebenen Werte in ner Session zu speichern, unter deinem Formular einen Link zu machen "Druckansicht" und der führt auf eine Seite / oder öffnet eine Seite in nem Popup.
Die Seite liest die relevanten Daten aus der Session aus und gibt sie schön formatiert mit dem wunderbaren PHP Befehl "echo" aus, ohne viel Farbschnickschnack.
|

06-08-2009, 18:55
|
|
Sakin
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 12
|
|
Wie speicher ich es den in einer Session und rufe sie dann später auf.
Ich habe versucht mich einzulesen, aber nicht rausgefunden was ich ändern müsste.
|

07-08-2009, 08:56
|
|
Killersocke
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 6
|
|
Checkbox - probleme beim übergeben
hallo ich hab auch ein problem mit meinen checkboxen, deswegen schreib ich hier bevor ich wieder en neuen thread aufmache! also idee ist eine benutzerverwaltung und wenn ich jetzt aus der liste eine checkbox anklicke sollen die daten der angeklickten reihe auf der nächsten seite angezeigt werden. debugger hab ich durchlaufen lassen also es sind keine größeren fehler mehr im script! bin noch ziemlich neu in sachen php und deswegen komm ich wahrscheinlich nicht alleine drauf! wäre schön wenn mir jemand weiterhelfen könnte
ich poste einfach ma meinen code
Code:
<?php
error_reporting(E_ALL);
session_start();
$c = mysql_connect('localhost', 'root', '') or die(mysql_error());
mysql_select_db('schulbibliothek') or die(mysql_error());
$sql = mysql_query("SELECT * FROM user");
#$query = mysql_query($sql) or die(mysql_error());
$treffer = mysql_num_rows($sql);
if($treffer > 0)
{
echo '<strong>Zurzeit sind <strong>' . $treffer . ' Benutzer im System registriert!</strong><br>';
echo '<br>';
}
echo '<br>';
echo '<form action="profil_bearbeiten.php" method="POST">';
echo '<div align="center">';
echo '<table border=\"0\" cellpadding=\"10\">';
echo '<tr>';
echo '<br>';
echo '<td><a href="profil_bearbeiten.php" target="mainFrame"><center><input type="submit" name="profil_bearb" value="Profil bearbeiten"></center></a></td>';
echo '<td><a href="user_loeschen.php" target="mainFrame"><center><input name="user_loe" type="button" value="User löschen"></center></a></td>';
echo '<td><a href="mahnungen.php" target="mainFrame"><center><input name="mahnung" type="button" value="Mahnungen anzeigen"></center></a></td>';
echo '<td><a href="liste_ausgeliehen.php" target="mainFrame"><center><input name="liste_ausg" type="button" value="Liste ausgeliehener Bücher"></a></center></td>';
echo '<td><a href="liste_reserviert.php" target="mainFrame"><center><input name="liste_res" type="button" value="Liste reservierter Bücher"></center></a></td>';
echo '</tr>';
echo '</table>';
echo '</div>';
echo '<br>';
echo '<div align="center">';
echo '<table border=\"1\">';
echo '<tr>';
echo '<th scope=\"col\">Auswahl</th>';
echo '<th scope=\"col\">ID</th>';
echo '<th scope=\"col\">Nachname</th>';
echo '<th scope=\"col\">Vorname</th>';
echo '<th scope=\"col\">Straße</th>';
echo '<th scope=\"col\">PLZ</th>';
echo '<th scope=\"col\">Wohnort</th>';
echo '<th scope=\"col\">Geburtsdatum</th>';
echo '<th scope=\"col\">Telefonnummer</th>';
echo '<th scope=\"col\">Email Adresse</th>';
echo '<th scope=\"col\">Benutzername</th>';
echo '<th scope=\"col\">Rechte</th>';
echo '</tr>';
while($r = mysql_fetch_array($sql, MYSQL_ASSOC))
{
echo '<tr>';
echo '<td><center><input name="control[]" value='.$r['id'].' type="checkbox"></center></td>';
echo '<td><center>'. $r['id'] .'</center></td>';
echo '<td><center>'. $r['name'] .'</center></td>';
echo '<td><center>'. $r['vorname'] .'</center></td>';
echo '<td><center>'. $r['strasse'] .'</center></td>';
echo '<td><center>'. $r['plz'] .'</center></td>';
echo '<td><center>'. $r['wohnort'] .'</center></td>';
echo '<td><center>'. $r['gebdatum'] .'</center></td>';
echo '<td><center>'. $r['telefonnummer'] .'</center></td>';
echo '<td><center>'. $r['mail'] .'</center></td>';
echo '<td><center>'. $r['username'] .'</center></td>';
echo '<td><center>'. $r['rechte'] .'</center></td>';
echo '</tr>';
}
echo '</table>';
echo '</form>';
echo '</div>';
?>
|

07-08-2009, 11:05
|
|
mkb_webprint
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 53
|
|
Zitat:
Zitat von Killersocke
hallo ich hab auch ein problem mit meinen checkboxen, deswegen schreib ich hier bevor ich wieder en neuen thread aufmache! also idee ist eine benutzerverwaltung und wenn ich jetzt aus der liste eine checkbox anklicke sollen die daten der angeklickten reihe auf der nächsten seite angezeigt werden. debugger hab ich durchlaufen lassen also es sind keine größeren fehler mehr im script! bin noch ziemlich neu in sachen php und deswegen komm ich wahrscheinlich nicht alleine drauf! wäre schön wenn mir jemand weiterhelfen könnte
ich poste einfach ma meinen code
|
Das ist löblich nicht noch einen Thread aufzumachen, nur sollten wir erstmal Problem 1 lösen bevor wir Problem 2 angehen ;-) So kommt man nur durcheinander.
|

07-08-2009, 12:22
|
|
Killersocke
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 6
|
|
checkboxen
welches 2. problem?^^ mein einziges problem ist das meine werte net übergeben werden. wo hast du jetzt noch ein 2. problem rausgelesen?^^
|

07-08-2009, 13:00
|
|
mkb_webprint
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 53
|
|
Zitat:
Zitat von Killersocke
welches 2. problem?^^ mein einziges problem ist das meine werte net übergeben werden. wo hast du jetzt noch ein 2. problem rausgelesen?^^
|
Problem 1 = Problem des Thread-Starters
Problem 2 = Dein Problem
----------------------------------------
Problem 3 = Vermischt die Diskussion, hier soll vorwiegend dem Thread-Starter geholfen werden. Wenn Sakin geholfen ist kommt Problem 2 dran, ok?
|

07-08-2009, 13:06
|
Kropff
  Administrator
|
|
Registriert seit: Mar 2002
Ort: Köln
Beiträge: 11.307
|
|
Zitat:
Zitat von mkb_webprint
Problem 3 = Vermischt die Diskussion, hier soll vorwiegend dem Thread-Starter geholfen werden. Wenn Sakin geholfen ist kommt Problem 2 dran, ok?
|
Das Problem des Threadstarters wurde bereits gelöst. Und zum Druckformular hat er sich nicht weiter geäußert. Du kannst dich also ruhig Killersocke annehmen.
Peter
__________________
Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
Meine Seite
|

07-08-2009, 13:13
|
|
mkb_webprint
Registrierter Benutzer
|
|
Registriert seit: May 2009
Beiträge: 53
|
|
Zitat:
Zitat von Killersocke
welches 2. problem?^^ mein einziges problem ist das meine werte net übergeben werden. wo hast du jetzt noch ein 2. problem rausgelesen?^^
|
Poste doch mal bitte den Code des Scripts, das die Daten entgegen nehmen soll.
|

10-08-2009, 10:21
|
|
Killersocke
Registrierter Benutzer
|
|
Registriert seit: Aug 2009
Beiträge: 6
|
|
Checkboxen
sry war leider übers we net da aber hier is der code von dir verlangte code
Code:
<?php
#error_reporting(E_ALL);
session_start();
var_dump($_POST);
$c = mysql_connect('localhost', 'root', '') or die(mysql_error());
mysql_select_db('schulbibliothek') or die(mysql_error());
if(isset($_POST["name"]))
{
echo '<form action=\"verwaltung.php\" method=\"post\">';
echo '<div align="center">';
echo '<table border=\"1\">';
echo '<tr>';
echo '<th scope=\"col\">Nachname</th>';
echo '<th scope=\"col\">Vorname</th>';
echo '<th scope=\"col\">Straße</th>';
echo '<th scope=\"col\">PLZ</th>';
echo '<th scope=\"col\">Wohnort</th>';
echo '<th scope=\"col\">Geburtsdatum</th>';
echo '<th scope=\"col\">Telefonnummer</th>';
echo '<th scope=\"col\">Email Adresse</th>';
echo '<th scope=\"col\">Benutzername</th>';
echo '<th scope=\"col\">Rechte</th>';
echo '</tr>';
foreach($_POST["control[]"] as $entry)
{
$sql = mysql_query("SELECT * FROM user WHERE id ='".$entry."'");
//print_r($_POST);
while($r = mysql_fetch_array($sql, MYSQL_ASSOC))
{
echo '<tr>';
echo '<td><center>'. $r['name'] .'</center></td>';
echo '<td><center>'. $r['vorname'] .'</center></td>';
echo '<td><center>'. $r['strasse'] .'</center></td>';
echo '<td><center>'. $r['plz'] .'</center></td>';
echo '<td><center>'. $r['wohnort'] .'</center></td>';
echo '<td><center>'. $r['gebdatum'] .'</center></td>';
echo '<td><center>'. $r['telefonnummer'] .'</center></td>';
echo '<td><center>'. $r['mail'] .'</center></td>';
echo '<td><center>'. $r['username'] .'</center></td>';
echo '<td><center>'. $r['rechte'] .'</center></td>';
echo '</tr>';
}
}
echo '</table>';
echo '</form>';
echo '</div>';
}
else
{
echo "Bitte wählen Sie einen Benutzer aus!";
}
?>
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|