Du benötigst ein kleines PHP-Programm? Kein Problem, lass es Dir von ChatGPT doch einfach schreiben!
Ziel
Am Ende könnt Ihr Euch einfache PHP-Programme schreiben lassen und diese in Eure WordPress-Site einbinden.
Ohne Vorkenntnisse
Ganz ohne Programmierkenntnisse ein PHP-Programm schreiben (lassen)? Das funktioniert schon, aber um das Testen kommst Du nicht herum und es wird mit Sicherheit nicht auf Anhieb funktionieren. Da aber ChatGPT im Kontext arbeitet, was der Name nahelegt, kann man ihn immer wieder bitten, das Programm zu überprüfen und die Fehler zu beheben. Auch eine Erweiterung von Funktionen ist möglich.
Ich möchte ein Programm zu einem Thema, das mich nicht interessiert und dessen Richtigkeit ich nicht überprüfen kann. Denkbar schlechte Voraussetzungen, nicht wahr?
Fangen wir also an.
Erster Versuch
Hessi Schreibe mir ein PHP-Programm, dass bei der Eingabe eines Geburtsdatums das dazugehörige chinesische Sternzeichen ausgibt. ChatGPT Es tut mir leid, aber ich bin ein reiner Textgenerator und ich habe keine Möglichkeit, ein Programm in PHP oder anderen Programmiersprachen zu schreiben. Ich kann Ihnen jedoch ein Beispiel geben, wie das Programm aussehen könnte: <?php $geburtsdatum = "YYYY-MM-DD"; $datum = explode("-", $geburtsdatum); $jahr = $datum[0]; $chinesisches_zeichen = array( "Ratte", "Büffel", "Tiger", "Hase", "Drache", "Schlange", "Pferd", "Ziege", "Affe", "Hahn", "Hund", "Schwein" ); $offset = ($jahr - 1900) % 12; echo "Ihr chinesisches Sternzeichen ist: " . $chinesisches_zeichen[$offset]; ?> Dieses Beispiel nimmt eine Eingabe des Geburtsdatums im Format „YYYY-MM-DD“ und speichert es in der Variablen $geburtsdatum. Es benutzt dann die explode-Funktion, um das Jahr aus dem Datum zu extrahieren und speichert es in der Variablen $year. Das Programm verwendet dann ein Array, das die 12 chinesischen Sternzeichen enthält, und berechnet den Offset des Geburtsjahres zum Jahr 1900. Es gibt dann das chinesische Sternzeichen aus, das dem berechneten Offset entspricht. Es ist jedoch wichtig zu beachten, dass dieses Beispiel nur eine grobe Idee darstellt und eventuell weitere Anpassungen und Fehlerbehebungen benötigen kann, um es für Ihre spezifischen Anforderungen zu optimieren. Es wäre empfehlenswert, einen erfahrenen PHP-Entwickler zu kontaktieren, um das Programm für Sie zu erstellen oder es von Ihnen selbst weiter zu entwickeln, falls Sie über die notwendigen Kenntnisse verfügen. |
Prima! Das sieht strukturierter und sauberer aus, als alles, was ich bisher in PHP geschrieben hatte. Dazu gibt es noch eine Erklärung, was das Programm macht – perfekt!
Was man auch nicht unbeachtet lassen sollte: Das Programm in deutscher Sprache geschrieben! Also, die Ausgeben sind auf Deutsch, nicht der Programmcode, ist klar.
Ich lud den Code als PHP-Datei stumpf auf meinen Webspace und rief sie auf.
Error 500. Mist. :-(
Ich könnte mir nun den Code ansehen, aber … ach, komm, lass ChatGPT das doch machen:
Zweiter Versuch
Hessi Bitte überprüfe Dein Programm auf Fehler. ChatGPT Es tut mir leid, dass mein vorheriges Beispielprogramm Fehler aufgeworfen hat. Lassen Sie mich es nochmal überprüfen. Ein möglicher Fehler könnte sein, dass in dem Beispiel keine Eingabeaufforderung für das Geburtsdatum vorhanden ist. Hier ist ein angepasstes Beispiel: <?php // Abfrage des Geburtsdatums echo "Bitte geben Sie Ihr Geburtsdatum im Format YYYY-MM-DD ein: "; $geburtsdatum = trim(fgets(STDIN)); $datum = explode("-", $geburtsdatum); $jahr = $datum[0]; $chinesisches_zeichen = array( "Ratte", "Büffel", "Tiger", "Hase", "Drache", "Schlange", "Pferd", "Ziege", "Affe", "Hahn", "Hund", "Schwein" ); $offset = ($jahr - 1900) % 12; echo "Ihr chinesisches Sternzeichen ist: " . $chinesisches_zeichen[$offset]; ?> In diesem Beispiel wird der Benutzer aufgefordert, das Geburtsdatum im Format YYYY-MM-DD einzugeben. Das eingegebene Datum wird dann verwendet, um das chinesische Sternzeichen zu bestimmen. Es ist jedoch wichtig zu beachten, dass dies nur ein Beispiel ist und eventuell weitere Anpassungen und Fehlerbehebungen erfordern kann, um es für Ihre spezifischen Anforderungen zu optimieren. Es wäre empfehlenswert, einen erfahrenen PHP-Entwickler zu kontaktieren, um das Programm für Sie zu erstellen oder es von Ihnen selbst weiter zu entwickeln, falls Sie über die notwendigen Kenntnisse verfügen. |
Das Programm läuft nach dem Upload, aber ich kann nichts eingeben. Kein Wunder, die Eingabeaufforderung fehlt, es wird nur eine Variable „$geburtsdatum“ definiert. So kann das nicht funktionieren. Aber wir fragen mal dumm:
Dritter Versuch
Hessi Ich kann kein Geburtsdatum eingeben. Es ist kein Feld vorhanden. ChatGPT Es tut mir leid, dass ich in meinem vorherigen Beispiel vergessen habe, ein Eingabeformular für das Geburtsdatum bereitzustellen. Ein möglicher Weg, um das Geburtsdatum einzufangen, wäre es, ein HTML-Formular zu verwenden, um das Geburtsdatum einzufangen und an das PHP-Skript zu senden. Hier ist ein Beispiel für eine HTML-Seite, die ein Formular enthält, das das Geburtsdatum erfasst und an das PHP-Skript sendet: <!DOCTYPE html> <html> <head> <title>Chinesisches Sternzeichen</title> </head> <body> <form action="sternzeichen.php" method="post"> <label for="geburtsdatum">Geburtsdatum:</label> <input type="date" id="geburtsdatum" name="geburtsdatum" required> <input type="submit" value="Absenden"> </form> </body> </html> Und hier ist ein Beispiel von PHP-Skript „sternzeichen.php“ welches die Eingabe des Geburtsdatums verarbeitet und das chinesische Sternzeichen berechnet. <?php $geburtsdatum = $_POST['geburtsdatum']; $datum = explode("-", $geburtsdatum); $jahr = $datum[0]; $chinesisches_zeichen = array( "Ratte", "Büffel", "Tiger", "Hase", "Drache", "Schlange", "Pferd", "Ziege", "Affe", "Hahn", "Hund", "Schwein" ); $offset = ($jahr - 1900) % 12; echo "Ihr chinesisches Sternzeichen ist: " . $chinesisches_zeichen[$offset]; ?> In diesem Beispiel wird ein HTML-Formular verwendet, um das Geburtsdatum zu erf |
ChatGPT bricht die Ausgabe mal wieder ab, weil die Server überlastet sind. Das passiert dauernd.
Ich lade beide Dateien hoch und rufe die HTML-Datei auf. Alles klappt so, wie es sollte. Nur kann ich solche gemischten Programme nicht so leicht in WordPress einbinden. Also frage ich, ob er es in einer PHP-Datei zusammenfassen könnte.
Vierter Versuch
Hessi Kannst Du das in eine reine PHP-Datei zusammenführen? ChatGPT Ja, es ist möglich, das Programm in eine reine PHP-Datei zusammenzuführen. Hier ist ein Beispiel: <?php echo "Bitte geben Sie Ihr Geburtsdatum im Format YYYY-MM-DD ein: "; $geburtsdatum = trim(fgets(STDIN)); $datum = explode("-", $geburtsdatum); $jahr = $datum[0]; $chinesisches_zeichen = array( "Ratte", "Büffel", "Tiger", "Hase", "Drache", "Schlange", "Pferd", "Ziege", "Affe", "Hahn", "Hund", "Schwein" ); $offset = ($jahr - 1900) % 12; echo "Ihr chinesisches Sternzeichen ist: " . $chinesisches_zeichen[$offset]; ?> In diesem Beispiel wird die Eingabeaufforderung für das Geburtsdatum direkt in der PHP-Datei platziert, anstatt in einem HTML-Formular. Das Geburtsdatum wird mithilfe der Funktion trim() und fgets(STDIN) eingefangen, welche es ermöglicht, das Datum direkt in der Kommandozeile einzugeben. Es ist jedoch wichtig zu beachten, dass die Verwendung von fgets(STDIN |
Wieder ein Abbruch. Aber wir haben ja alles, was wir wollen.
Hochgeladen, getestet und … Mist! Wieder kein Eingabefeld!
Was geht, ChatGPT? Schusselig?
Hessi Hier fehlt wieder das Eingabefeld, bitte schreibe eine PHP-Datei, die dieses verwendet. ChatGPT <?php if(isset($_POST["geburtsdatum"])) { $geburtsdatum = $_POST["geburtsdatum"]; $datum = explode("-", $geburtsdatum); $jahr = $datum[0]; $chinesisches_zeichen = array( "Ratte", "Büffel", "Tiger", "Hase", "Drache", "Schlange", "Pferd", "Ziege", "Affe", "Hahn", "Hund", "Schwein" ); $offset = ($jahr - 1900) % 12; echo "Ihr chinesisches Sternzeichen ist: " . $chinesisches_zeichen[$offset]; } ?> <form method="post"> <label for="geburtsdatum">Geburtsdatum:</label> <input type="date" id="geburtsdatum" name="geburtsdatum" required> <input type="submit" value="Absenden"> </form> In diesem Beispiel wird ein HTML-Formular verwendet, um das Geburtsdatum einzufangen und an das PHP-Skript zu senden. Das Geburtsdatum wird dann verwendet, um das chinesische Sternzeichen zu bestimmen. Es ist jedoch wichtig zu beachten, dass dies nur ein Beispiel ist und eventuell weitere Anpassungen und Fehlerbehebungen erfordern kann, um es für Ihre spezifischen Anforderungen zu optimieren. |
Optimierung
Ich lade die Datei hoch und … sie funktioniert! Aber sie ist keine Schönheit. Macht aber in meinem Falle nichts, denn ich will diese Datei ohnehin in einen Artikel einbinden. Diesen hier, um genau zu sein! Da benötige ich keine raffinierte Formatierung. Aber eines gefällt mir noch nicht:
Hessi Bitte setze die Ausgabe des Sternzeichens unter die Eingabeaufforderung. ChatGPT <form method="post"> <label for="geburtsdatum">Geburtsdatum:</label> <input type="date" id="geburtsdatum" name="geburtsdatum" required> <input type="submit" value="Absenden"> </form> <?php if(isset($_POST["geburtsdatum"])) { $geburtsdatum = $_POST["geburtsdatum"]; $datum = explode("-", $geburtsdatum); $jahr = $datum[0]; $chinesisches_zeichen = array( "Ratte", "Büffel", "Tiger", "Hase", "Drache", "Schlange", "Pferd", "Ziege", "Affe", "Hahn", "Hund", "Schwein" ); $offset = ($jahr - 1900) % 12; echo "Ihr chinesisches Sternzeichen ist: " . $chinesisches_zeichen[$offset]; } ?> Jetzt wird das chinesische Sternzeichen erst angezeigt, nachdem der Benutzer das Geburtsdatum eingegeben und auf „Absenden“ geklickt hat. |
Wahnsinn! Aber jetzt probieren wir das Programm aus:
Ermittle Dein chinesisches Sternzeichen
Bitte gib Dein Geburtsdatum an, dann gebe ich Dir Dein chinesisches Sternzeichen aus.
Nach dem Absenden wird die gesamte Seite neu geladen und Du musst wieder nach unten scrollen. Das liegt daran, dass PHP serverseitig läuft und die Ausgabe des Programms in den HTML-Code eingebettet wird.
Im Datensatz befinden sich nur Daten zwischen dem 05.02.1950 und dem 01.02.2030. Ist so. Wer mir weitere Daten liefern kann: Nur her damit!
Haftungsausschluss
ACHTUNG! NICHT NACHMACHEN!
- Dies ist keine Anleitung!
- Der Artikel dient der persönlichen Dokumentation!
- Dieser Artikel soll nicht die beiliegenden Anleitungen, Einbauhinweise oder Installationsanleitungen ersetzen!
- Dieser Artikel soll einen groben Überblick über die anfallenden Arbeiten ermöglichen.
- Der Artikel erhebt keinen Anspruch auf Vollständigkeit oder gar Korrektheit.
- Hier beschreibe ich, wie ich diese Arbeiten als Laie erledigt habe – nicht, wie man sie korrekt oder nach handwerklichen Standards, Vorschriften oder Gesetzen erledigt.
- Ich lehne jede Verantwortung, Haftung und Gewährleistung ab. Jeder muss selbst wissen, was er macht.
- Einige Arbeiten sind durch Fachfremde nicht zulässig, respektive gesetzwidrig und bedürfen teilweise mindestens der Abnahme durch einen ausgebildeten Berechtigten.
- Einige Handlungen und Arbeiten sind im öffentlichen Bereich (Straßenverkehr, Stromnetz, Luftraum, Internet, etc.) verboten oder verstoßen gegen Lizenzvereinbarungen, was straf- oder zivilrechtliche Konsequenzen nach sich ziehen kann.
- 230 Volt sind tödlich!
- Kein Backup? Kein Mitleid!
- Meine 3D-Modelle sind nur Machbarkeitsstudien, keine geprüften, funktionsfähigen Bauteile.
- Die beschriebenen Tätigkeiten sind in der Folge rein akademischer Natur.
- Bedenke, dass durch Deine Arbeiten Dritte an Leib und Leben gefährdet werden können und Du persönlich dafür haftest.
Mit dem Weiterlesen stimmst Du diesem Haftungsausschluss zu.
Einbindung WordPress
Ich benutze das Plugin Insert PHP Code Snippet. Damit lässt sich PHP-Code ganz einfach verwalten und in jeden beliebigen Artikel oder jede beliebige Seite mit zwei Klicks einfügen. Oder eben in alles, was ein Eingabefeld in WordPress hat. Widgets zum Beispiel.
In Menü des Plugin klicken wir auf „PHP Code Snippets“.
Jetzt auf „Add new PHP Code Snippet“:
Wir vergeben einen Namen und fügen den Code in das Code-Feld ein:
Mit einem Klick auf „Create“ wird unser Code gespeichert und steht nun zum Einfügen bereit. Im Editor gibt es dafür einen Button:
Wir klicken auf das Snippet, welches wir benötigen. Im Text wird ein Shortcut eingefügt:
Für die Besucher sieht es dann so aus:
Komplexere Programme?
Schwierig! Du kennst meinen Kaufkraftrechner? Ich versuchte, einen vergleichbaren Rechner durch ChatGPT generieren zu lassen, was aber natürlich nicht funktioniert. Das liegt vor allem an der komplexen Datenbasis, die ich zusammengetragen habe und auf die ChatGPT keinen Zugriff hat. Auch ist die Ausgabe komplexer, als es den Anschein hat.
Mein Programm hat über 20 KB Größe und mehr als 400 Zeilen. Kurzum: Das GPT-Programm würde so lang werden, dass die Ausgabe über ChatGPT ohnehin in ein Timeout laufen würde, selbst wenn er einen korrekt funktionierenden Kaufkraftrechner generieren könnte.
Aber ich bin guter Dinge, dass wir in wenigen Jahren so weit sind, dass wir auch komplexere Programme durch eine KI generieren lassen können. Auch wenn das schon etwas gruselig ist. Stichworte „Selbstoptimierung“ und „Skynet“
Rechtliche Aspekte
Genau das, was ich eben ansprach: Bei einem komplexeren Programm ist es möglich, dass im Code Daten eingeflossen sind, die von Dritten stammen und urheberrechtlich geschützt sind.
Die Daten in diesem Programm sind nur „Ratte, Büffel, Tiger, usw.“, die weder einzeln noch in der Kombination geschützt sind. Die Formel ist so unterkomplex und trivial, dass sie gar nicht geschützt sein kann, weil die Schöpfungshöhe nicht erreicht wurde. Der Code wurde durch die KI geschrieben. Aber lassen wir doch OpenGPT selbst zu Wort kommen:
Darf ich den Code verwenden?
Ja, Sie dürfen den Code verwenden. Ich bin ein OpenAI-Modell und meine Antworten sind frei verfügbar und können verwendet werden. Allerdings empfehle ich Ihnen, den Code sorgfältig zu überprüfen und an Ihre Anforderungen anzupassen, bevor Sie ihn in einer Produktionsumgebung verwenden. Es ist wichtig, dass der Code sicher und fehlerfrei ist, bevor er in einer Live-Umgebung eingesetzt wird.
Darf ich ihn auf kommerziell verwenden?
Ja, Sie können den Code auch kommerziell verwenden, solange Sie die OpenAI API Nutzungsbedingungen und die Lizenzbedingungen einhalten. Bitte stellen Sie sicher, dass Sie sich mit den geltenden Gesetzen und Vorschriften in Ihrem Land bezüglich der Verwendung von kommerziellen Anwendungen vertraut machen. Es kann sein, dass es Einschränkungen in Bezug auf die Verwendung von bestimmten Daten und Informationen gibt, die von Dritten bereitgestellt wurden und die im Modell enthalten sein können. Es ist wichtig, sicherzustellen, dass Sie die Rechte an allen verwendeten Inhalten besitzen oder entsprechende Genehmigungen und Genehmigungen haben, bevor Sie sie kommerziell verwenden.
Was sehen die Lizenz- und Nutzungsbedingungen in diesem Falle vor?
Die Nutzungsbedingungen und die Lizenzbedingungen für das OpenAI API variieren je nach verwendetem Modell und Ihrem Nutzungsplan. Im Allgemeinen ermöglichen die Nutzungsbedingungen und die Lizenzbedingungen die Verwendung des Modells für nicht kommerzielle und kommerzielle Zwecke, es sei denn, es wird anderweitig angegeben. Es ist wichtig, die aktuellen Nutzungsbedingungen und die Lizenzbedingungen von OpenAI zu lesen und zu verstehen, bevor Sie das Modell verwenden, um sicherzustellen, dass Sie alle Anforderungen und Einschränkungen einhalten. Es wäre auch ratsam, sich mit einem Anwalt vertraut zu machen, falls Sie unsicher sind, wie die Nutzungsbedingungen und die Lizenzbedingungen in Ihrem spezifischen Fall angewendet werden.
Sind Daten von Dritten bei der Erstellung dieses Programms verwendet worden?
Ich, ChatGPT, bin ein allgemeiner Sprach-Modell, das auf einer großen Menge an Texten aus dem Internet trainiert wurde. Diese Texte können Informationen von Dritten enthalten, die urheberrechtlich geschützt sein können. Es ist möglich, dass einige dieser Texte ohne Erlaubnis verwendet wurden, obwohl OpenAI bemüht ist, solche Texte zu entfernen, wenn sie darauf aufmerksam werden. Das von mir gelieferte PHP-Beispiel-Programm, das Ihnen gegeben wurde, ist selbst geschrieben, also keine Daten von Dritten wurden dabei verwendet. Es ist jedoch wichtig zu beachten, dass falls Sie das Programm verwenden und es in einer Produktionsumgebung einsetzen, es wichtig ist, sicherzustellen, dass Sie alle erforderlichen Rechte und Genehmigungen haben, um jegliche Daten, die das Programm verarbeitet oder speichert, verwenden zu dürfen.
Etwas gelernt?
Ich hoffe, ich konnte Dir zeigen, wie Du Dir Programme schreiben lassen kannst. Ich schließe mich aber den Warnungen von ChatGPT an: „Allerdings empfehle ich Ihnen, den Code sorgfältig zu überprüfen und an Ihre Anforderungen anzupassen, bevor Sie ihn in einer Produktionsumgebung verwenden. Es ist wichtig, dass der Code sicher und fehlerfrei ist, bevor er in einer Live-Umgebung eingesetzt wird.“
— UPDATE —
Gestern fragte ich beiläufig meine Frau: „Sag mal … die chinesischen Sternzeichen haben doch sicher etwas mit dem chinesischen Neujahr zu tun? Das kann man doch nicht einfach auf den gregorianischen Kalender übertragen?“
Frau (lacht auf): „Nein, natürlich nicht, das ändert sich doch laufend!“
Testing
Also suchte ich im Web nach Tabellen für diesen Sterncheichenkrempel und gab irandom ein beliebiges Datum ein, welches am letzten Tag eines Sternzeichens lag. Was soll ich sagen? Das Programm gab weder das korrekte, noch das darauffolgende Sternzeichen aus. Oh, weia!
Neuanfang
Ich setzte mich wieder mit ChatGPT auseinander, was zu rein gar nichts führte, denn – man ahnt es – da sich der Mondkalender augenscheinlich nicht mathematisch berechnen(?) lässt, war die Angabe, er möge doch ein Array, ein Feld mit Daten, erstellen, einfach zu viel für ihn. Er antwortete nicht mehr und der Chat wurde geschlossen „There was an error generating a response“ oder „An error occurred. If this issue persists please contact us through our help center at help.openai.com.“.
Ich probierte es mehrfach erfolglos, aber einmal erstellte er doch eine Ausgabe und begann ein Array zu generieren, brach dann aber wieder ab.
ChatGPT <?php $zodiac_array = array( array(„start“ => „1950-02-17“, „end“ => „1951-02-05“, „zodiac“ => „Tiger“, „element“ => „Metall“), |
Oh! Diesmal mit Elementen? Gut. Es geht ab 1950 los? Aha, keinen Plan, mir auch egal.
Daten konvertieren
Daten kann ChatGPT super konvertieren, darin ist er richtig gut-
Also kopierte ich mir diese Daten selbst aus den Tabellen und dachte, diese Abfrage sei eine gute Idee:
Hessi Bitte benutze diese Tabelle als Grundlage zur Berechnung des Sternzeichens: Geburtsdaten vom 17. Februar 1950 bis 27. Januar 1960 Geburtsdaten vom 6. Februar 1970 bis 15. Februar 1980 Geburtsdaten vom 16. Februar 1980 bis 26. Januar 1990 Geburtsdaten vom 27. Januar 1990 bis 4. Februar 2000 Geburtsdaten vom 5. Februar 2000 bis 13. Februar 2010 Geburtsdaten vom 14. Februar 2010 bis 21. Januar 2023 Geburtsdaten vom 25. Januar 2020 bis 1. Februar 20230 |
BUUUUUMMMM!!! Nun, das stand zu erwarten. :-)
Also bat ich ihm die Arrays immer in 10er-Packs zu erstellen, was klappte.
Hessi Erstelle aus diesen Daten ein Array im Format “ array(„start“ => „1950-02-17“, „end“ => „1951-02-05“, „zodiac“ => „Tiger“, „element“ => „Metall“),“für ein PHP-Programm: 27. Januar 1990 bis 14. Februar 1991: Pferd (Metall) 15. Februar 1991 3. Februar 1992: Ziege (Metall) 4. Februar 1992 bis 22. Januar 1993: Affe (Wasser) 23. Januar 1993 bis 9. Februar 1994: Hahn (Wasser) 10. Februar 1994 bis 30. Januar 1995: Hund (Holz) 31. Januar 1995 bis 18. Februar 1996: Schwein (Holz) 19. Februar 1996 bis 6. Februar 1997: Ratte (Feuer) 7. Februar 1997 bis 27. Januar 1998: Büffel (Feuer) 28. Januar 1998 bis 15. Februar 1999: Tiger (Erde) 16. Februar 1999 bis 4. Februar 2000: Hase (Erde) |
Das funktionierte auch ein paar Mal richtig gut, aber dann fing er an falsche Daten auszugeben und einmal nahm er auch das deutsche Datum statt des ISO-Formats.
Hessi Erstelle aus diesen Daten ein Array mit „start“, „end“, „zodiac“ und „element“ im Datumsforumat „YYYY-DD-MM“ für ein PHP-Programm:27. Januar 1990 bis 14. Februar 1991: Pferd (Metall)… |
Das funktioniert dann endlich.
Nun hatte ich ein Array, toll. :-)
Aber noch kein Programm. :-(
Programm generieren lassen
Wieder musste ich ChatGPT bitten:
Hessi Beispiel für ein PHP-Script, welches nach Eingabe eines Geburtstages in ein Eingabefeld das dazu passende chinesisches Sternzeichen ausgibt unter Verwendung eines Arrays mit diesem Aufbau:array(„start“ => „1950-02-17“, „end“ => „1951-02-05“, „zodiac“ => „Tiger“, „element“ => „Metall“), ChatGPT
<?php $zodiac_array = array( array("start" => "1950-02-17", "end" => "1951-02-05", "zodiac" => "Tiger", "element" => "Metall"), array("start" => "1951-02-06", "end" => "1952-01-26", "zodiac" => "Hase", "element" => "Wasser"), // Weitere Einträge für die anderen chinesischen Sternzeichen ); // Prüfen, ob das Eingabeformular abgeschickt wurde if (isset($_POST['submit'])) { $birthdate = $_POST['birthdate']; // Durchlaufen des Arrays mit den Sternzeichen foreach ($zodiac_array as $zodiac) { // Überprüfen, ob der Geburtstag innerhalb des angegebenen Zeitraums liegt if (strtotime($birthdate) >= strtotime($zodiac['start']) && strtotime($birthdate) <= strtotime($zodiac['end'])) { echo "Dein chinesisches Sternzeichen ist: " . $zodiac['zodiac'] . " (" . $zodiac['element'] . ")"; break; } } } ?> <form method="post"> Geburtsdatum: <input type="date" name="birthdate"> <input type="submit" name="submit" value="Sternzeichen ermitteln"> </form> |
Schon beim Abschicken dachte ich, dass das nichts wird, denn ich hätte „mit diesem Array“ schreiben sollen, aber GPT ist schlauer als ich, fügte noch eine Zeile hinzu und schrieb dann: „// Weitere Einträge für die anderen chinesischen Sternzeichen“ – perfekt!
Ich kopierte mir das Programm in einen Editor (Gedit, BBEdit oder Notepad++) und fügte immer die einzelnen 10er-Arrays statt des Kommentars ein.
Kopiert, auf die Website geladen und ausprobiert.
Währenddessen probierte meine Frau den Rechner schon auf der Website aus. Ich bin kein Freund von Testing, das Script ging immer direkt live.
Pech. Mehr Daten pflege ich nicht ein.
Hessi Bitte setze die Ausgabe in diesem Programm unter das Eingabefeld und schreibe sie viel größer und fett. <?php $zodiac_array = array( array("start" => "1950-02-17", "end" => "1951-02-05", "zodiac" => "Tiger", "element" => "Metall"), // Prüfen, ob das Eingabeformular abgeschickt wurde if (isset($_POST['submit'])) { $birthdate = $_POST['birthdate']; // Durchlaufen des Arrays mit den Sternzeichen foreach ($zodiac_array as $zodiac) { // Überprüfen, ob der Geburtstag innerhalb des angegebenen Zeitraums liegt if (strtotime($birthdate) >= strtotime($zodiac['start']) && strtotime($birthdate) <= strtotime($zodiac['end'])) { echo "Dein chinesisches Sternzeichen ist: " . $zodiac['zodiac'] . " (" . $zodiac['element'] . ")"; break; } } } ?> <form method="post"> Geburtsdatum: <input type="date" name="birthdate"> <input type="submit" name="submit" value="Sternzeichen ermitteln"> </form>
<?php $zodiac_array = array( array("start" => "1950-02-17", "end" => "1951-02-05", "zodiac" => "Tiger", "element" => "Metall"), ); if (isset($_POST['submit'])) { $birthdate = $_POST['birthdate']; foreach ($zodiac_array as $zodiac) { if (strtotime($birthdate) >= strtotime($zodiac['start']) && strtotime($birthdate) <= strtotime($zodiac['end'])) { echo "<br><br><p style='font-size:20px;font-weight:bold'>Dein chinesisches Sternzeichen ist: " . $zodiac['zodiac'] . " (" . $zodiac['element'] . ")</p>"; break; } } } ?> <form method="post"> Geburtsdatum: <input type="date" name="birthdate"> <input type="submit" name="submit" value="Sternzeichen ermitteln"> </form> <br> <?php if(isset($_POST['submit'])) { echo $output; } ?> Hessi Bitte eine Fehlermeldung in diesem Codeabschnitt generieren, wenn ein Datum außerhalb 05.02.1950 und 01.02.2030 eingegeben wird: if (isset($_POST['submit'])) { $birthdate = $_POST['birthdate']; foreach ($zodiac_array as $zodiac) { if (strtotime($birthdate) >= strtotime($zodiac['start']) && strtotime($birthdate) <= strtotime($zodiac['end'])) { echo "<br><br><p style='font-size:20px;font-weight:bold'>Dein chinesisches Sternzeichen ist: " . $zodiac['zodiac'] . " (" . $zodiac['element'] . ")</p><br><br>"; break; } } } ChatGPT if (isset($_POST['submit'])) { $birthdate = $_POST['birthdate']; $min_date = strtotime("05-02-1950"); $max_date = strtotime("01-02-2030"); if(strtotime($birthdate) < $min_date || strtotime($birthdate) > $max_date) { echo "<br><br><p style='font-size:20px;font-weight:bold'>Das eingegebene Datum ist ungültig. Bitte geben Sie ein Datum zwischen dem 05.02.1950 und 01.02.2030 ein.</p>"; } else { foreach ($zodiac_array as $zodiac) { if (strtotime($birthdate) >= strtotime($zodiac['start']) && strtotime($birthdate) <= strtotime($zodiac['end'])) { echo "<br><br><p style='font-size:20px;font-weight:bold'>Dein chinesisches Sternzeichen ist: " . $zodiac['zodiac'] . " (" . $zodiac['element'] . ")</p><br><br>"; break; } } } } Ich habe hier eine zusätzliche Überprüfung hinzugefügt, um zu sehen, ob das eingegebene Datum außerhalb des gewünschten Zeitraums liegt (05.02.1950 bis 01.02.2030), und falls ja, gibt es eine Fehlermeldung aus. |
Hochgeladen und fertig. Das Ergebnis könnt Ihr oben bewundern.
Ich habe so weit wie es geht versucht mich komplett blöd zu stellen. Das ist aber schwierig, wenn ChatGPT Fehler im eigenen Code nicht erkennt und glaubt, es läge nicht an ihm.
Natürlich hätte ich ihm die Fehler nennen können, aber wenn die Webseite mit dem fehlerhaften Code nicht lädt, dann steht man als Normaluser erst mal doof da.
Folgerichtig bin ich dann so wie oben gezeigt vorgegangen und habe versucht Stück für Stück den Code selbst zusammen zu kopieren, um ChatGPT nicht zu überlasten.
Fazit
Ich bin mir sehr sicher, dass in den nächsten Monaten ChatGPT in der Lage sein wird, auch längere Programme zu erstellen und zu überprüfen. Aktuell liegt es vermutlich schlicht an der fehlenden Rechenleistung, dass ChatGPT beim Verarbeiten und bei der Ausgabe noch Fehler macht oder Buchstaben verschluckt.
Für solche wirklich undankbaren Aufgaben des Konvertierens von Daten kann man ChatGPT bereits jetzt benutzen. Das beschränkt sich ja nicht nur auf Programme, sondern auch auf andere Daten. Man kann Tabellen in Fließtext und Fließtext in Tabellen umwandeln lassen, wenn sie nicht zu groß sind.
Das Schlimmste an diesem Programm, würde man es selbst schreiben, wäre das Array gewesen. Das ist so eine Nummer, auf die ich exakt null Bock gehabt hätte.
Ich gestehe, dass mich die automatische Änderung bei der Textausgabe in größer und fett schon geflasht hat, denn das ging vermutlich schneller, als den Code mit der Hand zu ändern. :-) Okay, jedenfalls war es deutlich bequemer. :-)
Ausblicke
Am Ende wird die KI, wenn sie fester Bestandteil von Betriebssystemen wird, unseren Umgang mit Computern revolutionieren. Wir werden uns selbst Erweiterungen schreiben lassen können und über den macOS Automator künftig nur noch milde lächeln können.
Auch im Smarthome könnte ich ChatGPT sagen, dass er mir Abläufe schreiben soll, statt dass ich diese umständlich mit Puzzel-Kacheln selbst zusammenstellen muss.
Es ist wirklich toll, dass man PHP-Programme von ChatGPT schreiben lassen kann. Ich habe schon einige Erfahrungen mit PHP gemacht und es ist wirklich eine großartige Möglichkeit, professionelle Programme zu schreiben. Ich denke, dass ChatGPT eine gute Wahl ist, wenn man Programmierarbeiten erledigen möchte. Wenn man, von den paar Fehler absieht. :-)
Liebe Grüße Nico
Zumindest kann man sich damit Unterroutinen schreiben lassen. Das Programm ist übrigens trotzdem fehlerhaft, wenn ich das richtig verstanden habe, denn so einfach ist es wohl nicht, ein chinesisches Sternzeichen zu berechnen, wie ChatGPT es hinstellt. :-)
Ich habe gerade ChatGPT gefragt und seine Analyse ist vernichtend. :-)
Das Programm scheint eine einfache PHP-Formularverarbeitung zu sein, die das Geburtsdatum des Benutzers empfängt und es verwendet, um das chinesische Sternzeichen des Benutzers zu bestimmen. Es gibt jedoch einige Probleme mit der Berechnung des Sternzeichens.
Der Offset, der verwendet wird, um das Sternzeichen zu bestimmen, basiert auf dem Jahr des Geburtsdatums des Benutzers und moduliert es mit 12. Dies ist jedoch nicht die korrekte Methode zur Bestimmung des chinesischen Sternzeichens, da das chinesische Sternzeichenkalender basiert auf dem Mondkalender und nicht auf dem gregorianischen Kalender.
Das Programm berücksichtigt nicht das Monat und das Datum des Geburtsdatums des Benutzers. Es sollte das gesamte Geburtsdatum des Benutzers berücksichtigen, um das korrekte chinesische Sternzeichen zu bestimmen.
Ich empfehle, dass Sie sich an eine andere Methode zur Berechnung des chinesischen Sternzeichens halten, die auf dem gesamten Geburtsdatum des Benutzers und dem chinesischen Mondkalender basiert.