Autor Beitrag
Testobjekt
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Fr 19.02.16 22:42 
Hallo!
Ich versuche einen String in Java mittels PHP in eine MySQL Datenbank zu liefern. Dies funktioniert bereits, jedoch will ich einen String($Datum) in
ein Date Format in die Datenbank schreiben. Der String sieht bereits so aus: YYYY-MM-DD
Jedoch weiß ich nicht wie ich in PHP dies realisiere?
ausblenden PHP-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
<?php 
 if($_SERVER['REQUEST_METHOD']=='POST'){
 
 //Getting values
 $Titel = $_POST['Titel'];
 $Beschreibung = $_POST['Beschreibung'];
 $Datum =date("Y.m.d"$_POST[,'Datum']);
 $Uhrzeit = $_POST['Uhrzeit'];

 //Creating an sql query
 $sql = "INSERT INTO termine (Titel,Beschreibung,Datum,Uhrzeit) VALUES ('$Titel','$Beschreibung','Datum','Uhrzeit')";
 
 //Importing our db connection script
 require_once('dbConnect.php');
 
 //Executing query to database
 if(mysqli_query($con,$sql)){
 echo 'Terminanfrage wurde gesendet';
 }else{
 echo 'Terminanfrage wurde nicht gesendet';
 }
 
 //Closing the database 
 mysqli_close($con);
 }

Weiß jemand wie dies funktioniert? lg

Moderiert von user profile iconNarses: Code- durch PHP-Tags ersetzt
Moderiert von user profile iconNarses: Topic aus Delphi4PHP-Technologien verschoben am Fr 19.02.2016 um 22:17
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10115
Erhaltene Danke: 1225

W2k .. W7pro .. W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Fr 19.02.16 23:16 
Moin!

Ich würde das mal so probieren:
ausblenden PHP-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  // Getting values
  $Titel = $_POST['Titel'];
  $Beschreibung = $_POST['Beschreibung'];
  $Datum = $_POST['Datum']; // hier sollte dann YYYY-MM-DD drin sein
  $Uhrzeit = $_POST['Uhrzeit'];

  // Creating an sql query
  $query = "INSERT INTO termine (Titel,Beschreibung,Datum,Uhrzeit) VALUES ('$Titel','$Beschreibung','$Datum','$Uhrzeit')"// Achtung! SQL-Injection!
 
  // Importing our db connection script
  require_once('dbConnect.php');
 
  // Executing query to database
  if (mysqli_query($con$query)) {
    echo 'Terminanfrage wurde gesendet';
  }
  else {
    echo 'Terminanfrage wurde nicht gesendet';
  }

  // Closing the database 
  mysqli_close($con);
}

Aaaaber! :shock: Du solltest dich mal dringend mit dieser Funktion beschäftigen! :mahn:

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.

Für diesen Beitrag haben gedankt: Testobjekt
Testobjekt Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Fr 19.02.16 23:39 
Das der String gleich im richtigen Format in die Datenbank geschrieben wird war ja mein erster Gedanke, funktioniert leider nicht. Beim Debuggen stehts auch in der Variable auch richtig drinnen zB 2016-11-16.

Ist dieser OOStil pflicht? Oder ist es möglich meinen Code zu verwenden - wenns möglich ist würde ich es nämlich so behalten und nur Datum/Uhrzeit konvertieren. :D
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10115
Erhaltene Danke: 1225

W2k .. W7pro .. W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Fr 19.02.16 23:51 
Moin!

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
Das der String gleich im richtigen Format in die Datenbank geschrieben wird war ja mein erster Gedanke, funktioniert leider nicht.
Was heißt denn "funktioniert nicht"?! :gruebel: Der Computer stürzt ab, die Welt geht unter, das Universum kollabiert in eine Singularität - und das wohlgemerkt ohne jegliche Fehlermeldung? :lupe: :nixweiss: :zwinker:

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
Beim Debuggen stehts auch in der Variable auch richtig drinnen zB 2016-11-16.
Interessanter wäre, was im SQL-String landet... ?

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
Ist dieser OOStil pflicht?
Was für ein OO-Stil? :suspect: Für mich sieht das wie prozedural aus... :?

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
Oder ist es möglich meinen Code zu verwenden - wenns möglich ist würde ich es nämlich so behalten
Es ist dein Code... :les: (nur ohne Syntaxfehler :P)

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
und nur Datum/Uhrzeit konvertieren. :D
Was denn nun, wird das Datum jetzt korrekt übergeben oder nicht?! :nut:

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Testobjekt Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Sa 20.02.16 00:04 
Also wenn ich meinen "Termin erstelle" wird der Titel und die Beschreibung in die Datenbank geschrieben, Datum und Uhrzeit bleibt da leer.
Also sprich 0000-00-00 und 00:00:00
Wie kann ich das überprüfen was im SQL String steht? Ich kann ja nur bis zum Ausgang vor der PHP Anweisung nachsehen was in der Variable ist?
Und da Titel und Datum der exakt gleiche Code in Java ist, sollte der String auch definitiv im SQL Befehl landen..^^
Ich meinte "ob ich lieber den OO Stil verwenden sollte." :wink:

Mein Ziel ist es das Datum (nebenbei geht das mit der Uhrzeit auch nicht aber wird ähnlich gleich zu lösen sein) zu konvertieren, damit es in die Datenbank kommt - wie soll mir egal sein. :gruebel:
Jedoch bin ich nur ein PHP Laie und hab da so meine Probleme.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10115
Erhaltene Danke: 1225

W2k .. W7pro .. W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Sa 20.02.16 00:10 
Moin!

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
Also wenn ich meinen "Termin erstelle" wird der Titel und die Beschreibung in die Datenbank geschrieben, Datum und Uhrzeit bleibt da leer.
Also sprich 0000-00-00 und 00:00:00
Soll heißen, es gibt keine Fehlermeldung oder Warnung? :lupe:

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
Wie kann ich das überprüfen was im SQL String steht?
ausblenden PHP-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
var_dump($_POST);
  // Getting values
  $Titel = $_POST['Titel'];
  $Beschreibung = $_POST['Beschreibung'];
  $Datum = $_POST['Datum']; // hier sollte dann YYYY-MM-DD drin sein
  $Uhrzeit = $_POST['Uhrzeit'];

  // Creating an sql query
  $query = "INSERT INTO termine (Titel,Beschreibung,Datum,Uhrzeit) VALUES ('$Titel','$Beschreibung','$Datum','$Uhrzeit')"// Achtung! SQL-Injection!
echo $query.'<br>';
Und dann bitte mal die Ausgaben hier reinsetzen. :les:

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
Ich meinte "ob ich lieber den OO Stil verwenden sollte."
Ach so. ;) Nö, das ist grundsätzlich egal, wenn du lieber prozedural haben willst, dann halt so. :nixweiss:

user profile iconTestobjekt hat folgendes geschrieben Zum zitierten Posting springen:
Mein Ziel ist es das Datum (nebenbei geht das mit der Uhrzeit auch nicht aber wird ähnlich gleich zu lösen sein) zu konvertieren
Du hast doch gesagt, die Werte kommen bereits im MySQL-Format im Post-Array an, was willst du dann noch konvertieren? :gruebel:

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Testobjekt Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Sa 20.02.16 00:27 
Nichts dergleichen keine Fehlmeldung.

Weil ich dachte das ich es konvertieren muss da meine Anstellungen nicht funktionierten.
Einloggen, um Attachments anzusehen!
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10115
Erhaltene Danke: 1225

W2k .. W7pro .. W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Sa 20.02.16 00:35 
Moin!

Du hast die SQL-Query-Variable nicht in $query umbenannt, also kann die Ausgabe nicht erfolgen. :idea: Das musst du nochmal anpassen. ;)

Aber das Datum sieht aus wie ein MySQL-Datumsformat, das sollte also passen. Zeig doch nochmal zusätzlich deine Tabellen-Deklaration. :les:

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Testobjekt Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Sa 20.02.16 00:41 
Hoppla :roll:

Ok das sagt definitiv schon mehr aus..

EDIT: ich hatte $ bei Datum Uhrzeit weggelassen, komisch, jetzt kommt das hier:
Einloggen, um Attachments anzusehen!
Testobjekt Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Sa 20.02.16 00:54 
Ich glaub ich spinne, jetzt funktionierts. :nixweiss:
Ich hab anscheinend wirklich nur das öde Dollarzeichen vergessen, das kann doch nicht wahr sein :D
Testobjekt Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 22



BeitragVerfasst: Sa 20.02.16 00:58 
Vielen Dank Narses!
Ich war mir zwar sicher das ich die Syntax kontrolliert hatte, aber manchmal spielt einem das Gehirn wohl Streiche. shame on me :oops:

solved.