Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

PHP Formular mit einem dropdown und einer Checkbox und MySQL

Frage Internet

Mitglied: christoff

christoff (Level 1) - Jetzt verbinden

16.11.2006, aktualisiert 17.11.2006, 15688 Aufrufe, 7 Kommentare

PHP Formular mit einem dropdown und einer Checkbox & MySQL

Hallo Leute,

ich bin absoluter newbie auf PHP & HTML und soll für meinen Cheffe ein Formular generieren das wie folgt aufgebaut ist :

Oben eine Überschrift

dann ein Dropdownfeld (mit 2 Daten (Stadt, und Kennzeichen [Hamburg, HH])) (Eigentlich ist ein weiterer Datensatz vorhanden (aktiv, deaktiv (0/1))).
Darunter ist ein Feld, indem eine Checkbox enthalten ist, das mir nach Auswahl aus dem DropDown das Häkchen in der checkbox aktualisiert.

in dem Dropdown sollen alle Einträge, die aktiv sind (Feld : aktiv = 1) rot angezeigt werden, der Rest schwarz.

Nach dem Klick auf übernehmen, soll in der Tabelle der ausgewählte Eintrag aktualisiert werden (aktiv oder deaktiv) und unterhalb des Übernehmen Buttons nochmal angezeigt werden. Darunter sollen zwei Buttons sein nach oben und zurück zur Hauptseite.


Ich stehe echt vor einem Rätsel und weiss echt nicht wie ich das hinkriegen soll !!! Das nächste Problem ich soll das so schnell wie möglich auf die Reihe kriegen (am besten Gestern ???)

Also ich bin für jede Lösung dankbar und freue mich auf Nachrichten von Euch !!!


Gruß


Christoff
Mitglied: catmin
16.11.2006 um 22:48 Uhr
Folgender Inhalt ist gut gemeint:

1. Chef sagen, dass du mehr Zeit brauchst, oder das nicht kannst.
Hatte eine sehr (sehr) ähnliche Situation und hab anfangs nix gesagt und natürlich hat dann das Ergebnis nicht gepasst. Der Bursche hielt mich dann recht lange für inkompetent.
Besser gleich abklären und realistische Termine ansetzen.

2. Umgebung
Welche Datenbank/Speichermöglichkeit?

3. Was hast du schon?
HTML-Forumular designed?
Datenbank gebaut?
Skripts/Tests?

4. Fang klein an.
Die Sonderfälle wie rot/aktiv schenk dir mal.
Schritt für Schritt.
HTML-Forms (de.selfhtml.org)
Datenbank (MSSQL, mysql, Postgres?...)
DB-Zugriff/Abfragen
...

Ich werde dir versuchen zu helfen, kann dir aber leider nicht das Programm schreiben, sondern nur Details liefern.
klingt vielleicht hart, ist aber nicht böse gemeint.


LG catmin
Bitte warten ..
Mitglied: christoff
16.11.2006 um 23:14 Uhr
Hallo Catmin,

ich habe so angefangen das Ding zu bauen :

(Achtung in dem Script vorher habe ich Städte angegeben... das gleiche brauche ich aber auch für Länder also wie hier... Das ist im Prinzip das gleiche.

Im unteren Teil sind diverse Echos um Probehalber die Daten zu sichten.

Ebenso hab ich auch die Farb-Formatierung hinbekommen.

Es fehlt theoretisch das absenden und der entsprechende Update Befehl...

Ich hoffe ich habe nen guten Anfang gemacht...

Danke erstmal für Deine Hilfe !!!

Christoff

Ab hier das Script :


<!DOCTYPE HTML PUBLIC " -W3CDTD HTML 4.01 Transitiona lEN"
"http:
www.w3.org/tr/REC-html4/strict.dtd">
<html>
<head>
<title>Länder-Aktivierung</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body {
background-color: #CCCCCC;
}
.Stil5 {
color: #FF0000;
font-weight: bold;
}
.Stil6 {
color: #000000;
}
-->
</style>
</head>
<body onLoad="window.resizeTo(650, 600), immervorn()">
<?php
Zugangsdaten für MySQL

$user="root";
Username für den MySQL-Zugang
$password=""; Hier ist noch kein Passwort gesetzt
$host="localhost";
Name (IP-Adresse) des Rechners mit MySQL
$dbname="ppscs_V2"; Name der Datenbank
Verbindung aufbauen
$db = mysql_pconnect($host, $user, $password)
or die ("Verbindung fehlgeschlagen");

Standard
mysql_select_db($dbname, $db);




?>
<center><h1>Länder aktivieren / deaktivieren</h1></center>
<form action="laender_ks.php" method="post" target="_top">
<table width="500" border="0" align="center">
<tr>
<td colspan="4">&nbsp;</td>
</tr>
<tr>
<td rowspan="5">&nbsp;</td>
<td><div align="right">Name : </div></td>
<td><label>
<select name="name">
<?
$mysql_select_land="SELECT * FROM land ORDER BY name";
$liste = mysql_query($mysql_select_land, $db);
if($liste)
{
while($land_row = mysql_fetch_array ($liste))
{
if ($land_row[2] == 1)
{
$format = Stil5;
$zustand = "ja";
}
else
{
$format = Stil6;
$zustand = "nein";
}
?>
<option value="" class= <? echo $format?> >

<? echo $land_row[1] ?>,
<? echo $land_row[0] ?>
<? $land = $land_row[0];
$name = $land_row[1];
$aktiv = $land_row[2] ?>
</option>
<?
}
}
else
{
echo "Daten nicht gelesen";
}
?>
</select>
</label> </td>
<td rowspan="5">&nbsp;</td>
</tr>
<tr>
<td colspan="2"><div align="center">Die bereits aktivierten L&auml;nder sind farblich gekennzeichnet ! </div></td>
</tr>
<tr>
<td><div align="right">Land aktivieren : </div></td>
<td><label>
<input type="checkbox" name="checkbox" value="1">
</label></td>
</tr>
<tr>
<td colspan="2">&nbsp;</td>
</tr>
<tr>
<td colspan="2"><label>
<div align="center">
<input type="submit" name="Submit" value="Übernehmen" style="width:100px">&nbsp;
<input name="abbrechen" type="button" value="abbrechen" style="width:100px">
</div>
</label>
</td>
</tr>
<tr>
<td colspan="4">&nbsp;</td>
</tr>
</table>

<?
$land_row[0]= $_POST["land_row_0"];
Länderkürzel
$land_row[1]= $_POST["land_row_1"]; LandesName
$land_row[2]= $_POST["land_row_2"];
Aktiv Ja / Nein

$name = $land_row[1];
$land = $land_row[0];
$aktiv_db = $land_row[2];

?>

</form>
<?

if($result=mysql_query("SELECT * FROM land ORDER BY name"))
{
printf("<p>Anzahl gefundener Datensätze : %d</p>\n", mysql_num_rows($result));
printf("<p>Anzahl gefundener Datenspalten : %d</p>\n", mysql_num_fields($result));

while ($row = mysql_fetch_object($result))
{
if($row->land)
printf("<br />%s , %s, %s\n", htmlentities($row->land), htmlentities($row->name), htmlentities ($row->aktiv));
else
printf("<br />%s\n", htmlentities($row->land));
}
mysql_free_result($result);
}
else
{
printf("<p>Sorry, keine Verb. zur DB! %s</p>\n",mysql_error());
}



?>
</body>
</html>
Bitte warten ..
Mitglied: catmin
17.11.2006 um 07:56 Uhr
Bist ja eh schon verdammt weit!

Brauchst du eigentlich noch Hilfe? bzw wobei?


Anmerkungen:

nicht vergessen die Datenbank-Verbindung zu schließen.

mit $tmp=mysql_fetch_array($result);
echo $tmp['land'];
kannst du auf Spaltendaten per Name zugreifen. Ist manchmal besser als fetch_row, falls sich an der DB-Struktur was ändert, die Namen aber gleich bleiben.
Bitte warten ..
Mitglied: christoff
17.11.2006 um 09:09 Uhr
Hallo Catmin,

brauche noch folgende Funktionen :

übernahme der Daten (UPDATE) zur DB,

Anzeige der Daten in dem Formular nach dem "Submit"

Das fehlt und da komme ich absolut nicht weiter !!!

Wäre schön wenn Du mir da die richtigen schubser geben könntest !!!


Danke


Christoff
Bitte warten ..
Mitglied: catmin
17.11.2006 um 09:34 Uhr
na klar
Klickst du auf den <input type="submit" ... > Knopf so werden die Daten an den Server zur gewünschten datei geschickt.
Wenn die Daten geposted werden (<form ... method="post">) bekommst du die einzelnen Formulardaten über (z.B.
$land=$_POST['land'];
'land' ist der bezeichner den du im <input> als name angibtst.

Das Update Statement geht ca. so

UPDATE {tabelle} SET {spaltenname1}='{wert1}', {spaltenname2}='{wert2}' WHERE {primärschlüssel}={id_der_zu_ändernden_zeile}

Die {...} durch deine Werte ersetzten.

Falls du noch Fragen hast: schieß los!

lg
catmin
Bitte warten ..
Mitglied: christoff
17.11.2006 um 09:55 Uhr
Hallo Catmin,

ich habe folgendes Problem...

mein Select scheint nich zu funktionieren... kannst Du da mal drüberblicken :

$status = ('SELECT aktiv from land where land = "'.$aktives_land.'"');

Was mache ich falsch ???

Danke
Christoff...
Bitte warten ..
Mitglied: catmin
17.11.2006 um 11:08 Uhr
mysql_query fehlt?

Tipp (ist aber kein fehler): Mach die äußeren Gänsefüßchen doppelt( " ) und die im SQL-Statement einfach( ' ).

$sql="SELECT aktiv from land where land='".$aktives_land."' ";
$result= mysql_query($sql);
while($tmp=mysql_fetch_array($result)){
...
}

Wenns noch immer nicht geht mach mal ein
echo $sql;
und schaus dir/mir mal an
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
PHP
PHP MySQL Login (7)

Frage von Yanmai zum Thema PHP ...

PHP
MySQL-Abfrage mit php: Wert + true bzw. false (2)

Frage von tomolpi zum Thema PHP ...

Datenbanken
gelöst Eine Art Access, nur mit PHP und MySQL? (14)

Frage von McLion zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...

Windows Tools
gelöst Aussendienst Datensynchronisierung (12)

Frage von lighningcrow zum Thema Windows Tools ...

Windows Server
RODC über VPN - Verbindung weg (10)

Frage von stefan2k1 zum Thema Windows Server ...