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
GELÖST

Mit einem PHP-Formular die Daten einer MSSQL DB ändern

Frage Entwicklung PHP

Mitglied: helmuthelmut2000

helmuthelmut2000 (Level 2) - Jetzt verbinden

03.06.2011 um 22:34 Uhr, 4125 Aufrufe, 17 Kommentare

Hallo,

Folgendes stört mich an meinen PHP Seiten.
Ich habe da ein Formular wo ich die Daten von einer MSSQL DB auslese.
Dann gehe ich mit der Maus auf eine Zeile und mit einem link werden die Daten von dieser
Zeile auf einer ander Seite angezeigt. So:

href='../details.php?auswahl=" . $dsatz["Schluessel"] . "'

Auf der Seite details.php hat man dann die Möglichkeit auf einem Knopf die Daten
auf eine andere Seite zu schicken und dann verändern. So:

onclick=self.location.href='auftrag_aendern.php?auswahl=" . $_GET['auswahl']."'

Bis dahin ist das ja gut so. Aber wenn ich jetzt die Daten verändert habe und dann auf OK klicke geht das wieder auf eine Seite
wo dann das update auf die DB gemacht wird. So:

method='post' action='auftrag_aendern1.php'

$sql = "UPDATE Ergebnisse SET.......

Kann man das nicht irgendwie so machen das das gleich auf der Seite wo die Daten verändert werden, beim OK klicken
auch gleich in die DB geschrieben wird?
Oder habt ihr einen guten Link im Netz wo man das gut nachlesen kann?

Danke.

Gruß
Helmut
Mitglied: Xaero1982
04.06.2011 um 11:29 Uhr
Hi,

klar du kannst überprüfen, ob der ok butten gedrückt wurde ... mit if isset usw ...

Wenn er nicht gedrückt wurde kein update
Wenn er gedrückt wurde macht er das update ...

01.
method='post' action='auftrag_aendern1.php'
muss dann auf sich selbst zeigen ... mit PHP_SELF

VG
Bitte warten ..
Mitglied: EvilMoe
04.06.2011 um 13:10 Uhr
Ja das geht.

Du hast dort ja dein Formular. Dort musste dann beim action einfach leer lassen, das reicht. PHP_SELF geht auch, aber nichts zu schrieben geht schneller ;)

Dann musst du dein Code auf der Seite ergänzen wo du deine Daten ausgibst.
In etwa so:

01.
// Dassteht ganz oben auf deiner Seite 
02.
if(isset($_POST)) { 
03.
   // Alles was hier steht wird nur ausgeführt wenn du ein Formular absendest 
04.
 
05.
   // Nicht vergessen hier noch die übergebenen Werte auf richtigkeit zu überprüfen 
06.
   // z.b. is_numeric etc wenn es numerische Werte sind wie z.B. die ID, hängt von deinem Formular ab. 
07.
  $ID = (!empty($_POST['ID']) && is_numeric($_POST['ID'])) ? (int)$_POST['ID'] : 0; 
08.
 
09.
   // Wenn du die Werte überprüft hast kannste deinen SQL Befehl ausführen für das Update. 
10.
   $sql = "UPDATE Ergebnisse SET....... WHERE id=".$ID."
11.
 
12.
13.
 
14.
 
15.
// Hier Kommt dann dein ursprünglicher Code wo die Daten ausgegeben wird 
16.
// deine Formulare etc.
Bitte warten ..
Mitglied: helmuthelmut2000
04.06.2011 um 19:23 Uhr
Hallo,

Also ich da jetzt das Formular wo man die änderungen macht und die sieht so aus.

if (isset($_GET['auswahl']))

$db_link=mssql_connect(MSSQL_HOST,MSSQL_USER,MSSQL_PASS);
$select=mssql_select_db(MSSQL_DATABASE);


$sql = "SELECT * from Ergebnisse WHERE Schluessel = '" . $_GET['auswahl']."'";

$res = mssql_query($sql);
$dsatz = mssql_fetch_assoc($res);

echo "<form class='yform columnar' id='addjob' name='addjob' method='post' action='auftrag_aendern1.php'>";

echo "<div class='type-text'>";
echo "<label for='abt'>Abt.</label>";
echo "<label for='abt' name='abt' id='abt' size='3' maxlength='1'>" . $dsatz['Auftrag'] . "</label>";
echo "</div>";

echo "<div class='type-text'>";
echo "<label for='kunde'>Kunde</label>";
echo "<input value='" . $dsatz['Kunde'] . "' type='text' name='kunde' id='kunde' size='5' maxlength='3' />";
echo "</div>";

usw.

Dann gehts mit OK zur Seite 'auftrag_aendern1.php' und steht:

$db_link=mssql_connect(MSSQL_HOST,MSSQL_USER,MSSQL_PASS);
$select=mssql_select_db(MSSQL_DATABASE);

$sql = "UPDATE Ergebnisse SET
Auftrag='".$_POST['Auftrag']."', Kunde='".$_POST['Kunde']."', WHERE Schluessel = '".$_POST['Schluessel']."'";

Und mit OK fertig.
Die Seite 'auftrag_aendern1.php' möchte ich weg lassen.

Wo muss ich denn dann :
$sql = "UPDATE Ergebnisse SET....... WHERE id=".$ID."; einfügen und was mach ich mit if(isset($_POST)) ?

Danke
Bitte warten ..
Mitglied: EvilMoe
04.06.2011 um 19:27 Uhr
Das was ich dir geschrieben habe muss vor deinem
01.
if (isset($_GET['auswahl']))
Du musst dich dringend mit den Themen XSS und SQl Injection auseinander setzen. Dein Code ist alles andere als sicher.
Bitte warten ..
Mitglied: helmuthelmut2000
04.06.2011 um 19:31 Uhr
Hallo,

Ja ich hab da schon noch:

ini_set("diplay_errors",1);
error_reporting(E_ALL);

stehen und noch was. Ich hab gedacht ich kürze das ab.
Bitte warten ..
Mitglied: helmuthelmut2000
04.06.2011 um 22:34 Uhr
Hallo,

Wenn ich das so einfüge dann bekomme ich die Fehlermeldung:

Notice: Undefined index: Auftrag in C:\....\auftrag_aendern.php on line 291
Notice: Undefined index: Kuftrag in C:\....\auftrag_aendern.php on line 291
usw.

Muß ich bei:

if(isset($_POST)) {

nicht
if(isset($_POST['auswahl'])) {
schreiben.
Und was macht man bei:
action='auftrag_aendern1.php' ?

Danke.

Gruß
Helmut
Bitte warten ..
Mitglied: EvilMoe
04.06.2011 um 22:44 Uhr
Wie wir schon sagten musst du bei "form" den action einfach leer lassen also so action="". Das genügt.
Dadurch landest du auf der gleichen Seite wieder wo du das Formular abgesendet hast.

Die Fehlermeldung sagt das das du nicht sauber programmiert hast und nicht die Eingaben vorher geprüft hast.

>nicht
>if(isset($_POST['auswahl'])) {
>schreiben.
Kann man auch, finde ich aber doppelt gemoppelt.
Du musst natürlich die Eingabe prüfen. Da ich aber nicht weiß was in $_POST['auswahl'] stehen kann bzw. darf kann ich dir dabei nicht helfen.

Eine richtige Validierung der Eingaben könnte so aussehen wie wir es dir in den Beiträgen vorher schon einmal gezeigt haben. Die Systematik bleibt gleich.

Ich mache das immer so wie ich es oben beschrieben habe.
01.
  
02.
ini_set("diplay_errors",1); 
03.
error_reporting(E_ALL); 
04.
 
05.
 
06.
if(isset($_POST)) { 
07.
   // Alles was hier steht wird nur ausgeführt wenn du ein Formular absendest 
08.
 
09.
   // Nicht vergessen hier noch die übergebenen Werte auf richtigkeit zu überprüfen 
10.
   // z.b. is_numeric etc wenn es numerische Werte sind wie z.B. die ID, hängt von deinem Formular ab. 
11.
  $ID = (!empty($_POST['ID']) && is_numeric($_POST['ID'])) ? (int)$_POST['ID'] : 0;  
12.
  $auswahl = (isset($_POST['auswahl'])) ? $_POST['auswahl'] : 0; 
13.
 
14.
 
15.
 
16.
   // Wenn du die Werte überprüft hast kannste deinen SQL Befehl ausführen für das Update. 
17.
   $sql = "UPDATE Ergebnisse SET....... WHERE id=".$ID."
18.
 
19.
20.
 
21.
// Hier Kommt dann dein ursprünglicher Code wo die Daten ausgegeben wird 
22.
// deine Formulare etc.
Bitte warten ..
Mitglied: helmuthelmut2000
09.06.2011 um 10:16 Uhr
Hallo,

Hat jetzt leider etwas gedauert, aber jetzt möchte ich das hinbekomen.
Kannst Du mir da noch mal Helfen?

Ich glaube bei mir ist das Problem das ich die { Klammern nicht Richtig habe.
Wo muß ich denn bei meiem jetzigen Formular die Klammern Richtig setzten damit das dann mit
dem von Dir Passt?

if (isset($_GET['auswahl']))

$db_link=mssql_connect(MSSQL_HOST,MSSQL_USER,MSSQL_PASS);
$select=mssql_select_db(MSSQL_DATABASE);


$sql = "SELECT * from Ergebnisse WHERE Schluessel = '" . $_GET['auswahl']."'";

$res = mssql_query($sql);
$dsatz = mssql_fetch_assoc($res);

echo "<form class='yform columnar' id='addjob' name='addjob' method='post' action='auftrag_aendern1.php'>";

echo "<div class='type-text'>";
echo "<label for='abt'>Abt.</label>";
echo "<label for='abt' name='abt' id='abt' size='3' maxlength='1'>" . $dsatz['Auftrag'] . "</label>";
echo "</div>";

echo "<div class='type-text'>";
echo "<label for='kunde'>Kunde</label>";
echo "<input value='" . $dsatz['Kunde'] . "' type='text' name='kunde' id='kunde' size='5' maxlength='3' />";
echo "</div>";



Danke.
Bitte warten ..
Mitglied: helmuthelmut2000
09.06.2011 um 12:38 Uhr
Hallo,

Also das geht jetzt bei mir aber ich bekomme immer noch die Fehlermeldungen:

Notice: Undefined index: Auftrag in C:\....\auftrag_aendern.php on line 291
Notice: Undefined index: Kuftrag in C:\....\auftrag_aendern.php on line 291
usw.

Weis noch jemand woran das liegen könnte?
Bitte warten ..
Mitglied: EvilMoe
09.06.2011 um 13:20 Uhr
Zitat von helmuthelmut2000:
Hallo,

Also das geht jetzt bei mir aber ich bekomme immer noch die Fehlermeldungen:

Notice: Undefined index: Auftrag in C:\....\auftrag_aendern.php on line 291
Notice: Undefined index: Kuftrag in C:\....\auftrag_aendern.php on line 291
usw.

Weis noch jemand woran das liegen könnte?


Ja, du tust die Eingaben nicht validieren!
Dein Script ist unsauber programmiert und auch noch extrem unsicher.

Ich dachte du willst das nicht mehr über \auftrag_aendern.php machen? Warum wird die dann noch aufgerufen?
Bitte warten ..
Mitglied: helmuthelmut2000
09.06.2011 um 14:14 Uhr
Hallo,

Ja im \auftrag_aendern.php mach ich doch auch die Eingaben.
Dann brauch ich doch das Formular.
Ich möchte auf das \auftrag_aendern1.php Formular verzichten.

Was ist das die Eingaben validieren?
Wie macht man das?
Bitte warten ..
Mitglied: EvilMoe
09.06.2011 um 14:18 Uhr
Zeig am besten mal die gesamten Code damit ich weiß wie es nun aussieht.

Validieren heißt das du ALLE Eingaben die nicht von deinem Server stammen also Benutzereingaben wie Formulare müssen vorher überprüft werden.
Z.B. so
01.
$ID = (!empty($_POST['ID']) && is_numeric($_POST['ID'])) ? (int)$_POST['ID'] : 0;   
02.
$auswahl = (isset($_POST['auswahl'])) ? $_POST['auswahl'] : 0; 
Dann lies dir auch mal das durch, ist sehr wichtig: http://www.inside-php.de/tutorial/PHP-Sicherheit-13/SQL-Injections-verm ...
Bitte warten ..
Mitglied: helmuthelmut2000
09.06.2011 um 14:27 Uhr
Hallo,

Hier hab ich mal die Seite:

<?php
alle Fehler im Browser anzeigen
ini_set("diplay_errors",1);
error_reporting(E_ALL);

if(isset($_POST))
if (isset($_GET['auswahl'])){
$db_link=mssql_connect(MSSQL_HOST,MSSQL_USER,MSSQL_PASS);
$select=mssql_select_db(MSSQL_DATABASE);

$sql = "SELECT * from Ergebnisse WHERE Schluessel = '" . $_GET['auswahl']."'";

$res = mssql_query($sql);
$dsatz = mssql_fetch_assoc($res);
}
{
$db_link=mssql_connect(MSSQL_HOST,MSSQL_USER,MSSQL_PASS);
$select=mssql_select_db(MSSQL_DATABASE);

$sql = "UPDATE Ergebnisse SET
Kunde='".$_POST['kunde']."', Bezeichnung='".$_POST['bezeichnung']."', Stueck='".$_POST['stueck']."', Eilt='".$_POST['eilt']."' WHERE Schluessel = '".$_POST['Schluessel']."'";
mssql_query($sql);
}

Das Formular muss die Klassen "yform columnar" erhalten
// Die Attribute name und id der einzelnen Formularelemente können zwar auch anders benannt werden, jedoch muss die Bennenung das jeweils gleich sein!

echo "<form class='yform columnar' id='addjob' name='addjob' method='post' action=''>";

echo "<div class='type-text'>";
echo "<label for='kunde'>Kunde</label>";
echo "<input value='" . $dsatz['Kunde'] . "' type='text' name='kunde' id='kunde' size='5' maxlength='3' />";
echo "</div>";

echo "<div class='type-text'>";
echo "<label for='bezeichnung'>Bezeichnung</label>";
echo "<input value='" . $dsatz['Bezeichnung'] . "' type='text' name='bezeichnung' id='bezeichnung' size='20' maxlength='18' />";
echo "</div>";

echo "<div class='type-text'>";
echo "<label for='stueck'>Stück</label>";
echo "<input value='" . $dsatz['Stueck'] . "' type='text' name='stueck' id='stueck' size='20' maxlength='6' />";
echo "</div>";

echo "<div class='type-check'>";
echo "<label>Eilt</label>";
$note = $dsatz['Eilt'];
{
if($note == 'Normal') {
echo "<input type='radio' name='eilt' value='Normal' id='eilt_normal' checked='checked' /><span class='abstand'>Normal</span>";
} else {
echo "<input type='radio' name='eilt' value='Normal' id='eilt_normal' /><span class='abstand'>Normal</span>";
}
}
$note = $dsatz['Eilt'];
{
if($note == 'Eilt') {
echo "<input type='radio' name='eilt' value='Eilt' id='eilt_eilt' checked='checked' /><span class='abstand'>Eilt</span>";
} else {
echo "<input type='radio' name='eilt' value='Eilt' id='eilt_eilt' /><span class='abstand'>Eilt</span>";
}
}
echo "<input type='radio' name='eilt' value='' id='eilt_frei1' /><span class='abstand'>Frei</span>";
echo "<input type='radio' name='eilt' value='' id='eilt_frei2' /><span class='abstand'>Frei</span>";
echo "</div>";
echo "<input type='hidden' name='Schluessel' value='" . $dsatz["Schluessel"] . "'>";
echo "<p align='center'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='submit' value=' OK ' id='submit' onClick='return EingabenUeberpruefen();'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=reset value=&nbsp;Abbruch&nbsp; onclick=self.location.href='index.php'></a></p>";
echo "</form>";
echo "<p>&nbsp;</p>";

mssql_close()
?>
Bitte warten ..
Mitglied: EvilMoe
09.06.2011 um 14:39 Uhr
Zuerst einmal verwende bitte die entsprechenden < code> Tags, dadurch bleibt es leserlich.

Ich habe es kurz für dich sortiert, du MUSST da jetzt noch folgendes ändern, dass musst du selber lernen sonst bringt es dir nichts.



01.
 
02.
ini_set("diplay_errors",1); 
03.
error_reporting(E_ALL); 
04.
 
05.
if(isset($_POST))  
06.
		// Daten Updaten 
07.
		$db_link=mssql_connect(MSSQL_HOST,MSSQL_USER,MSSQL_PASS); 
08.
		$select=mssql_select_db(MSSQL_DATABASE); 
09.
		// Alle Parameter musst du vorher prüfen, 
10.
                // So kannst du es auf jeden fall nicht stehen lassen 
11.
		$sql = "UPDATE Ergebnisse SET Kunde='".$_POST['kunde']."', Bezeichnung='".$_POST['bezeichnung']."', Stueck='".$_POST['stueck']."', Eilt='".$_POST['eilt']."' WHERE Schluessel = '".$_POST['Schluessel']."'"
12.
		mssql_query($sql); 
13.
               // keien prüfung ob der SQL Befehl erfolgreich war? 
14.
15.
 
16.
if (isset($_GET['auswahl'])){ 
17.
		// Daten auswählen 
18.
	 
19.
		$db_link=mssql_connect(MSSQL_HOST,MSSQL_USER,MSSQL_PASS); 
20.
		$select=mssql_select_db(MSSQL_DATABASE); 
21.
		 
22.
               //  $_GET['auswahl'] MUSST du vorher validieren! 
23.
               // was ist wenn auf einmal in $_GET 'DROP xxx' drin steht? man kann durch diesen Fehler ganze Datenbanken von dir löschen! 
24.
		$sql = "SELECT * from Ergebnisse WHERE Schluessel = '" . $_GET['auswahl']."' LIMIT 1;"
25.
		 
26.
		$res = mssql_query($sql); 
27.
		$dsatz = mssql_fetch_assoc($res); 
28.
 
29.
                // Auch hier müsstest du erstmal prüfen ob der SQL Befehl  überhaupt Datensätze zurück leifert 
30.
 
31.
		 
32.
		echo "<form class='yform columnar' id='addjob' name='addjob' method='post' action=''>"
33.
		 
34.
		echo "<div class='type-text'>"
35.
		echo "<label for='kunde'>Kunde</label>"
36.
		echo "<input value='" . $dsatz['Kunde'] . "' type='text' name='kunde' id='kunde' size='5' maxlength='3' />"
37.
		echo "</div>"
38.
		 
39.
		echo "<div class='type-text'>"
40.
		echo "<label for='bezeichnung'>Bezeichnung</label>"
41.
		echo "<input value='" . $dsatz['Bezeichnung'] . "' type='text' name='bezeichnung' id='bezeichnung' size='20' maxlength='18' />"
42.
		echo "</div>"
43.
		 
44.
		echo "<div class='type-text'>"
45.
		echo "<label for='stueck'>Stück</label>"
46.
		echo "<input value='" . $dsatz['Stueck'] . "' type='text' name='stueck' id='stueck' size='20' maxlength='6' />"
47.
		echo "</div>"
48.
		 
49.
		echo "<div class='type-check'>"
50.
		echo "<label>Eilt</label>"
51.
		$note = $dsatz['Eilt'];  
52.
53.
		if($note == 'Normal') { 
54.
		echo "<input type='radio' name='eilt' value='Normal' id='eilt_normal' checked='checked' /><span class='abstand'>Normal</span>";  
55.
		} else
56.
		echo "<input type='radio' name='eilt' value='Normal' id='eilt_normal' /><span class='abstand'>Normal</span>";  
57.
58.
59.
		$note = $dsatz['Eilt'];  
60.
61.
		if($note == 'Eilt') { 
62.
		echo "<input type='radio' name='eilt' value='Eilt' id='eilt_eilt' checked='checked' /><span class='abstand'>Eilt</span>";  
63.
		} else
64.
		echo "<input type='radio' name='eilt' value='Eilt' id='eilt_eilt' /><span class='abstand'>Eilt</span>";  
65.
66.
67.
		echo "<input type='radio' name='eilt' value='' id='eilt_frei1' /><span class='abstand'>Frei</span>"
68.
		echo "<input type='radio' name='eilt' value='' id='eilt_frei2' /><span class='abstand'>Frei</span>"
69.
		echo "</div>";	 
70.
		echo "<input type='hidden' name='Schluessel' value='" . $dsatz["Schluessel"] . "'>";  
71.
		echo "<p align='center'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='submit' value=' OK ' id='submit' onClick='return EingabenUeberpruefen();'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type=reset value=&nbsp;Abbruch&nbsp; onclick=self.location.href='index.php'></a></p>"
72.
		echo "</form>"
73.
		echo "<p>&nbsp;</p>"
74.
 
75.
 
76.
77.
 
78.
mssql_close()
Bitte warten ..
Mitglied: helmuthelmut2000
12.06.2011 um 23:27 Uhr
Hallo,

Das mit den Daten Prüfen mach ich so:

function EingabenUeberpruefen()
{
if(document.addjob.kunde.value.length <= 2 )
{
alert("Bitte geben Sie eine Kundennummer mit 3 Zahlen ein!");
document.addjob.kunde.focus();
return false;
}
usw.

Geht das nicht so?
Bitte warten ..
Mitglied: EvilMoe
12.06.2011 um 23:33 Uhr
Geht schon, allerdings ist das nicht sicher.

-Javascript kann deaktiviert werden -> gar keine Prüfung
-Dein PHP Script kann aufgerufen werden ohne dein eigenes Formular zu verwenden -> JS wird ebefalls nciht aufgerufen.

Du MUSST alle Eingaben auf deinem Server also im PHP prüfen, nur das ist sicher. Davon abgesehen prüfst du dort nur auf die Länge. Eine Kundennummer wird wohl noch mehr erkennungsmuster haben als deren Länge (z.B. muss aus zahlen bestehen, fehlt bei dir).
Bitte warten ..
Mitglied: helmuthelmut2000
17.06.2011 um 22:19 Uhr
Hallo,

ich komm da leider nicht weiter.
Kannst du mir da weiterhelfen wie man das Richtig
macht?
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Webbrowser
gelöst Daten in entfernte Mysql DB schreiben (3)

Frage von nullacht15 zum Thema Webbrowser ...

Datenbanken
gelöst MsSQL 2005 zu MsSQL 2014 Servernamen ändern? (21)

Frage von SPSman zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (23)

Frage von patz223 zum Thema Windows Userverwaltung ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (19)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...