Top-Themen

Aktuelle Themen (A bis Z)

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 Datensatz an MySQL übergeben im selben Formular

Mitglied: themannr1

themannr1 (Level 1) - Jetzt verbinden

16.05.2011, aktualisiert 02.06.2011, 4027 Aufrufe, 18 Kommentare

Hallo allerseits

Liebe Leute..
Folgendermassen. Ich möchte einen Datensatz in der MySQL-Tabelle abspeichern. Tabelle besitzt nur einen Attribut "Projekttitel" jetzt im Testfall. Im selben Formular soll alles geschehen. Ich scheitere kläglich..

Ich bedanke mich für jegliche Tipps und Tricks schon mal im Voraus, falls Ihr einen Fehler entdeckt oder es besser wisst, wie man es macht.

Danke und viele Grüsse

01.
<html><head> <title> </title> 
02.
</head> 
03.
<?php 
04.
	include ("dbopen.inc.php"); 
05.
?> 
06.
<body > 
07.
 
08.
<?php 
09.
  if (isset($_GET['submit'])) { 
10.
    $ausgabe = ''; 
11.
    $fehler = ''; 
12.
     
13.
    if (isset($_GET['Projekttitel']) && !is_array($_GET['Projekttitel']) && $_GET['Projekttitel'] != '') { 
14.
		$ausgabe .= "INSERT INTO test (ID) VALUES ('$_GET[Projekttitel]');"
15.
 
16.
    } else
17.
      $fehler .= 'Fehler !! '; 
18.
19.
20.
?> 
21.
 
22.
<h3> EINTRAGEN HIER:</h3> <br> 
23.
<a href="index.php">Startseite</a><br><br> 
24.
 
25.
<form action="<?php echo htmlspecialchars ($_SERVER['PHP_SELF']); ?>" method="GET"
26.
 
27.
 <input type="text" name="Projekttitel" size="30" value="<?php 
28.
if (isset($_GET['Projekttitel']) && is_array ($_GET['Projekttitel'])) { 
29.
	echo htmlspecialchars ($_GET['Projekttitel']); 
30.
31.
?>" /> Projekttitel:<br /><br /> 
32.
 
33.
 
34.
 
35.
<br /> <br /> 
36.
<input type="submit" name="submit" value="Speichern" /> 
37.
 
38.
</form> 
39.
</body> 
40.
</html>
Mitglied: Xaero1982
16.05.2011 um 13:31 Uhr
Hi,

was steht in der dbopen.Inc.php?

Sehe hier nämlich nichts von SQL in deinem "Script".

Google doch mal php + mysql

VG
Bitte warten ..
Mitglied: EvilMoe
16.05.2011 um 14:38 Uhr
Hallo

$_GET['Projekttitel'] != '') {
$ausgabe .= "INSERT INTO test (ID) VALUES ('$_GET[Projekttitel]');";

und wo soll der SQL Befehl ausgeführt werden?
Dir fehlt ein mysql_query($ausgabe) oder ein $DB->query($ausgabe) je nachdem was du verwendest.

Davon abgesehen ist es tödlich wie du programmierst, du lässt eine Eingabe in einem SQL Befehl ohne diese vorher zu validieren.
Schau dir mal ein kapitel PHP/MySQL SQL Injection an.
Bitte warten ..
Mitglied: themannr1
16.05.2011 um 16:51 Uhr
"Tödlich" ist es wie ich programmiere.. :- ) hoffentlich nicht.. :- )

Also das File dient ein und einzig dem Zweck, das Prinzip zu begreifen. Ausgebessert wird es später.
Also: "dbopen.inc.php" enthält folgende Pararameter. Ist aber irrelevant für meine Frage:
01.
<?php 
02.
// mysql Verbindung und Aufruf der Datenbank 
03.
$server = "localhost";  // MySQL-Server 
04.
$user = "root"
05.
$pass = ""
06.
$dbase="test"
07.
 
08.
$conn = mysql_connect($server, $user, $pass); 
09.
if ($conn
10.
11.
		mysql_select_db($dbase,$conn); 
12.
13.
else 
14.
15.
		die("<b>Verbindung zum MySQL-Server konnte nicht hergestellt werden </b>"); 
16.
17.
?>
Bitte warten ..
Mitglied: themannr1
16.05.2011 um 16:54 Uhr
$ausgabe = '';
$fehler = '';
if (isset($_GET['Projekttitel']) && !is_array($_GET['Projekttitel']) && $_GET['Projekttitel'] != '') {
$ausgabe .= "INSERT INTO test (ID) VALUES ('$_GET[Projekttitel]');";

Hier liegt der Hund begraben :- (
PS.me
Bitte warten ..
Mitglied: ReichMio
16.05.2011 um 17:07 Uhr
Welche Fehlermeldung kriegst den angezeigt ? (stichwort mysql_error() )
Bitte warten ..
Mitglied: EvilMoe
16.05.2011 um 17:24 Uhr
Wie gesagt, das kann nicht gehen.
Wo fürhrst du deinen SQL Befehl aus?
Alles was du machst ist dein SQL query in einer Variable zu speichern.
Bitte warten ..
Mitglied: themannr1
16.05.2011 um 18:15 Uhr
Folgendes gemacht, ganz kurz:

create table test (
Projekttitel varchar(30) not null,
primary key (projekttitel));

Eintragen kann ich so:
Insert Into test (Projekttitel) values ('Hallo'); -> und es funktioniert

Nun, ich möchte das folgende Prozedere via PHP eintragen können. Nur das. Wie stelle ich es an? :- )

Vielen Dank für das Interesse zeigen und für das Helfen!!
LG
Bitte warten ..
Mitglied: EvilMoe
16.05.2011 um 18:57 Uhr
Ich habe.dir bereits 2x die Lösung zu deinem Problem gesagt. Wenn du es nicht umsetzt kann ich dir auch nicht mehr helfen.
Bitte warten ..
Mitglied: Xaero1982
16.05.2011 um 20:19 Uhr
Hi,

meine Frage ist absolut nicht irrelevant, denn wenn du in der Datei nichts drin stehen hast mit der Datenbank wirst du auch nichts in die DB eintragen können, weil die gar nicht bekannt ist.

Und so isses hier auch ...

Was du dir ansehen solltest habe ich dir bereits gesagt - so lernst du auch nichts, wenn du nur vorgekautes hinschreibst, was noch dazu nicht zum Ziel führt ...

Aber das sagte Moe ja auch schon ...!

VG
Bitte warten ..
Mitglied: themannr1
16.05.2011 um 20:47 Uhr
also..

was soll ich lesen? kennste empfehlungen?

1) Der Datenbank ist bekannt -> $dbase="test"
2) Ich kann nicht im selben FOrmular ausführen, was ich schon mit über 2 Dateien verteiltes Konstrukt schaffe. Ich habe auf Quellcode gehofft, salominische Wörter kenn ich selbst zu genüge.

Aber nichts desto trotzt. Vielen Dank!
Grüesse.PS
Bitte warten ..
Mitglied: Xaero1982
16.05.2011 um 20:56 Uhr
Hi,

du sollst nach PHP und MYSQL googlen.

1) Du kennst sie, die dbopen.inc.php kennt sie, aber das wars ... dir fehlt der entscheidende Punkt, den Moe nannte:

Zitat:
Dir fehlt ein mysql_query($ausgabe) oder ein $DB->query($ausgabe) je nachdem was du verwendest.
Und weiter:
Alles was du machst ist dein SQL query in einer Variable zu speichern.

Du fragst ja nicht mal nach was damit gemeint ist, das zeigt uns dann einfach nur: Du liest nicht das was wir dir schreiben!

2) Keine Ahnung was du damit sagen willst...

Code? Bekommste ... ob du was damit anfangen kannst bezweifel ich, aber wir werden sehen

database.inc.php
01.
<?php 
02.
 
03.
class Database 
04.
05.
  private $handler
06.
 
07.
  // Constructor zum Verbinden 
08.
  public function __construct($host,$user,$pass,$database){ 
09.
  	if(!$this->handler = mysql_connect($host,$user,$pass)) 
10.
    	echo "Fehler beim Verbinden..."
11.
    else
12.
    	if (!mysql_select_db($database,$this->handler)) 
13.
	    	echo "Fehler beim Auswählen der database..."
14.
15.
    return $this->handler; 
16.
17.
 
18.
  // Verbindung zum Datenbankserver 
19.
  public function setDB($host,$user,$pass) { 
20.
  	if(!$this->handler = mysql_connect($host,$user,$pass)) 
21.
    	echo "Fehler beim Verbinden..."
22.
    return $this->handler; 
23.
24.
 
25.
  // Auswahl der Datenbank 
26.
  public function selectDB($database) { 
27.
	if (!mysql_select_db($database,$this->handler)) 
28.
    	echo "Fehler beim Auswählen der database..."
29.
30.
 
31.
  // Abfrage an Datenbank 
32.
  public function SQL($query) { 
33.
  	$result = mysql_query($query,$this->handler) or die(mysql_error()); 
34.
    return $result
35.
36.
 
37.
  // Destructor 
38.
  function __destruct() { 
39.
//  	mysql_close($this->handler); 
40.
41.
 
42.
43.
?>
Und weiter mit Beispiel:

01.
<?php 
02.
	REQUIRE_ONCE("database.inc.php"); 
03.
 
04.
         $_SESSION['db']=new Database("Server","User","Passwort","Datenbank"); 
05.
 
06.
 
07.
$result=$_SESSION['db']->SQL("INSERT INTO test  (ID) VALUES ('$_GET[Projekttitel]')"); 
08.
 
Das Formular musst du noch entsprechend einbauen...

Und wie angemerkt ... sql injection hab ich nicht eingebaut ...

VG

[Edit Biber] Codeformatierung auf "type=php" ergänzt [/Edit]
Oh danke
Bitte warten ..
Mitglied: EvilMoe
16.05.2011 um 21:31 Uhr
Warum eine eigene Klasse? Nutz doch PDO oder MySQLi und fertig.
Bitte warten ..
Mitglied: Xaero1982
16.05.2011 um 21:33 Uhr
Ach das ist ca. von 2006 oder so

Er wollte Code, nun hat er Code ... )

VG
Bitte warten ..
Mitglied: ChristophD
24.05.2011 um 16:16 Uhr
Zitat von Xaero1982:
Ach das ist ca. von 2006 oder so

Er wollte Code, nun hat er Code ... )

VG

NICHT hilfreich!
Bitte warten ..
Mitglied: EvilMoe
24.05.2011 um 16:45 Uhr
Die Lösung wurde bereits mehrmals gesagt.
Kann also geschlossen werden.

Meinst du durch deinen beitrag wird es besser?
Bitte warten ..
Mitglied: Xaero1982
24.05.2011 um 19:09 Uhr
Zitat von ChristophD:
> Zitat von Xaero1982:
> ----
> Ach das ist ca. von 2006 oder so
>
> Er wollte Code, nun hat er Code ... )
>
> VG

NICHT hilfreich!

Willst du mich auf den Arm nehmen?!
Wenn du keine Ahnung hast brauchst du keine sinnlosen Kommentare schreiben!

VG
Bitte warten ..
Mitglied: Biber
24.05.2011 um 19:35 Uhr
[OT]
Kennt ihr denn schon mein immer wieder gern rezitiertes "Fehlende Passgenauigkeit von Anforderungen und Voraussetzungen"?

Ich fürchte, der schon so oft von mir erbettelte 1-Euro-Döner-farbene Haken hängt zwar am Beitrag, ist aber vollkommen irreführend.

@themannr1
Bitte nicht verschnupft reagieren, aber nach meinem Eindruck nützt dir ein egal ob 10zeiliger oder 100seitiger Fertigcode
mit oder ohne Klassen oder Bart noch überhaupt nichts.

Investiere sinnvollerweise erst mal ein, zwei Abende in ein Tutorial zum Thema "mySQL und php".
Von diesen Tutorials gibt es nun wirklich mehr als FDP-WählerInnen in Bremen und sie sind strukturiert und es stehen Wahrheiten darin.

Wenn ich diesen für alle Beteiligten unbefriedigenden Beitrag der Bremer FDP hinterher schicken darf, dann schreib mir bitte eine PN mit Betreff "Ab dafür".
Ansonsten lasse ich ihn hier auch stehen, falls einer von euch ihn mal für eine Bewerbungsmappe braucht.

[Edit 23:30]
Sorry @themannr1 und danke @Xaero1982 für den Hinweis - meine Reaktion war vor allem hervorgerufen durch ChristophDs Kommentar, den ich fälschlicherweise dem Beitragsersteller zugeordnet habe.

Dennoch - ich habe eben nochmal den Beitragsverlauf gelesen.
Zu dem (konstruktiv und ehrlich gemeinten) Hinweis, sich erstmal mit den Grundlagen auseinandersetzen und das strukturiert, stehe ich nach wie vor.
Okay, das Anraunzen lass ich weg.

[/Edit]


Grüße
Biber
[/OT]
Bitte warten ..
Mitglied: ChristophD
25.05.2011 um 13:26 Uhr
Edit:
Bitte warten ..
Ähnliche Inhalte
Microsoft Office

Access (2010), Datensätze zählen via VBA und Wert in anderes Formular übergeben

gelöst Frage von d4shoerncheNMicrosoft Office11 Kommentare

Guten Morgen, ich komme bei meiner Access-Datenbank leider nicht weiter. Ich habe eine Datei in der zwei Tabellen und ...

PHP

MySQL Update eines Datensatz mit Variable

gelöst Frage von Jens4everPHP4 Kommentare

Hallo zusammen, ich habe jetzt 2 h gesucht und versucht und komme gerade nicht weiter Ich habe eine Mail-Verifizierung ...

PHP

MySQL Daten zu Javascript übergeben

gelöst Frage von AirbastlPHP6 Kommentare

Ich stehe gerade etwas auf dem Schlauch, aber vlt. fällt dem ein oder anderen das Problem gleich auf. Die ...

Datenbanken

MySQL Function Anzahl Datensätze ermitteln

gelöst Frage von MultiStormDatenbanken4 Kommentare

Hallo, aktuell stehe ich vor einem Problem bei dem ich nicht weiter komme. ich wollte mit eine MySQL funtion ...

Neue Wissensbeiträge
Windows 10

Neue Sicherheitslücke in Windows 10 (Version 1709) durch Google öffentlich geworden

Information von kgborn vor 6 StundenWindows 10

Vor ein paar Tagen haben Googles Sicherheitsforscher vom Projekt Zero eine Sicherheitslücke im Edge-Browser publiziert. Jetzt wurde eine weitere ...

iOS
IOS 11.2.6 verfügbar
Information von sabines vor 12 StundeniOS

Mit dem Update soll der Bug behoben werden, bei dem eine bestimmte Zeichenkette IOS zum Absturz gebracht hat.

Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 1 TagSicherheit8 Kommentare

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 1 TagInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Heiß diskutierte Inhalte
Router & Routing
LANCOM VPN CLIENT einrichten
Frage von Finchen961988Router & Routing27 Kommentare

Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen, wir haben einen Kunden der hat einen Speedport ...

Windows Server
AD DS findet Domäne nicht, behebbar?
Frage von schapitzWindows Server24 Kommentare

Guten Tag, ich habe bei einem Kunden ein Problem mit den AD DS. Umgebung ist folgende: Windows Server 2016 ...

LAN, WAN, Wireless
VPN Cisco ASA5505 PaloAlto PA-200
gelöst Frage von YannoschLAN, WAN, Wireless22 Kommentare

Hallo zusammen, ich würde gerne ein Site-to-Site VPN zwischen den beiden Standorten aufbauen. PaloAlto PA200 Internetanschluss Deutsche Telekom GK ...

Webbrowser
Welcher Browser ist der Beste?
Frage von justtinWebbrowser15 Kommentare

Hallo Leute Ich habe eine interessante Frage. Mich wurde mal interessieren welcher Browser ist eure meinung nach der beste? ...