Featured Post

Blogstart

September 18, 2023

Die Seite darf endlich online gehen. Ich habe mir einen eigenen Blog programmiert und das Ergebnis kannst du hier sehen. Warum und wieso das Ganze, erfährst du im Beitrag.

Blogbeitrag lesen
Thumbnail zum Beitrag Blogstart
Featured Post

Jugaad-Prinzipien für Entwickler

September 25, 2023

Entdecke die sechs Schlüsselprinzipien des Jugaad-Ansatzes, um effizienter und nachhaltiger zu programmieren. Flexibilität, Einfachheit, Ressourcenschonung, Schnelligkeit, Frugalität und Einfallsreichtum sind die Grundlage für eine flexible und ressourcenschonende Herangehensweise an Problemlösungen. Lade jetzt meine PDF herunter.

Blogbeitrag lesen
Thumbnail zum Beitrag Jugaad-Prinzipien für Entwickler

Bild für Rechtschreibprüfung mit chatGPT in Website einbauen

Hier zeige ich dir, wie du ChatGPT dazu nutzen kannst, deine Formulare in deiner Website auf Rechtschreibfehler zu korrigieren.

PS: Hier gibt es das ganze zum Download. Darf gerne weiter verteilt werden: Download ZIP.

Was wir dafür brauchen

  • Ein input Feld in einem Formular -> index.php
  • eine JavaScript Datei ->index.js
  • eine PHP Datei die Kontakt zur chatGPT API aufnimmt -> chatgpt.php

Zuerst erstellen wir uns ein Formular, in dem wir einen falschgeschriebenen Titel einfügen. Dort binden wir natürlich die index.js ein, damit wir die JavaScript Funktion mit dem Button aufrufen können.

<script src="index.js"></script>
<form>
            <div class="mb-3">
                <label for="beitragstitel" class="form-label">Beitragstitel</label>
                <input  type="text" 
                        class="form-control" 
                        name="beitragstitel" 
                        id="beitragstitel" 
                        value="ich bin ien falsh geschrieben title" required>
            </div>
            <button class="btn btn-primary btn-sm mb-2" 
                    onclick="rechtschreibung(event, 'beitragstitel')">
                    Rechtschreibprüfung
            </button>
        </form>

Hier ist die JavaScript Funktion

async function rechtschreibung(event, elementId) {
    event.preventDefault();  // Verhindert das Neuladen der Seite

    const element = document.getElementById(elementId);
    const content = element.value;

    const requestData = {
      message: `Lasse den Text im Original und prüfe nur die Rechtschreibung. 
      Auch Leerzeilen sollen bestehen bleiben bei folgenden Text: ${content}`
    };

    try {
        const response = await fetch("chatgpt.php", {
            method: "POST",
            headers: {
                "Content-Type": "application/json"
            },
            body: JSON.stringify(requestData)
        });

        if (!response.ok) {
            console.error(`Server Fehler: ${response.status}`);
            return;
        }

        const data = await response.json();
        if (data.reply) {
            element.value = data.reply;
        } else {
            console.error("Keine Antwort vom Server");
        }
    } catch (error) {
        console.error(`Fetch Fehler: ${error}`);
    }
}

Und zum Schluss die chatgpt.php Um die Api abzufragen benötigst Du einen API KEY von openai. Wie du dir den erstellst, erkläre ich hier nicht extra.

<?php
header("Content-Type: application/json");
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: POST");
header("Access-Control-Allow-Headers: Content-Type");

$input_data = json_decode(file_get_contents("php://input"), true);
$message = $input_data['message'];
$api_key = "DEIN API KEY";
$api_url = "https://api.openai.com/v1/completions";

$headers = array(
    "Content-Type: application/json",
    "Authorization: Bearer $api_key"
);

$api_data = array(
    "model" => "text-davinci-003",
    "prompt" => $message,
    "temperature" => 0,
    "max_tokens" => 1000,
    "top_p" => 0.9,
    "frequency_penalty" => 0,
    "presence_penalty" => 0.6
);

$ch = curl_init($api_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($api_data));

$response = curl_exec($ch);

if (curl_errno($ch)) {
    echo json_encode(['error' => 'Curl error: ' . curl_error($ch)]);
    curl_close($ch);
    exit();
}

$responseData = json_decode($response, true);
curl_close($ch);

if (isset($responseData['choices'][0]['text'])) {
    echo json_encode(['reply' => trim($responseData['choices'][0]['text'])]);
} else {
    echo json_encode(['error' => 'Keine Antwort vom Modell']);
}

Du kannst dir den Code zum testen bei den Downloads runterladen. Füge deinen API KEY in die chatgpt.php ein und teste das Ganze. Es ist bereits ein falscher Titel per Value in das Feld eingetragen. Mit Klick auf den Button, korrigiert chatGPT den Titel. PS: Der Code hat kein Anspruch auf Vollständigkeit oder Sicherheit. Benutze ihn nur, wenn du weißt, was du tust.

Über mich...

...

Das bin ich:
Ein Anstoß für neue Projekte, leidenschaftlicher Bücherwurm und engagierter Familienmanager. Auf Reisen finde ich Sinn und Inspiration. Pünktlichkeit und Zuverlässigkeit zeichnen mich aus. In der Stille finde ich Kraft, und meine Technikbegeisterung treibt mich an. Die Natur ruft mich zum Wandern und Fotografieren. Als Vater, Sohn und Programmierer trage ich viele Hüte. Zeitschriften? Ich liebe sie.
Meine Stärken:
Ich bin ein Frühaufsteher, der Pläne in die Tat umsetzt. Ich organisiere gerne Ausflüge, verschlinge Bücher und sauge Wissen auf. Meine Ruhe bewahre ich auch in stressigen Situationen, und mit meiner Drohne fange ich besondere Momente ein.
Was ich noch lernen möchte:
Den regelmäßigen Gang ins Fitnessstudio, das Ausschlafen genießen, handwerkliche Reparaturen meistern. Und vielleicht, wie man bessere Texte schreibt.