Jackery IFA Fireplace

PHP Eingabe Temporär abspeichern und aufrufbar machen

Driver78

Lt. Junior Grade
Registriert
Feb. 2005
Beiträge
412
Guten Abend,

ich hatte vor kurzen schon um Hilfe gebeten um eine Signatur zu ermöglichen:

PNG mit Text versehen

Diese sind nun aktuell so aus:

km.php


Nun ändere ich jedesmal die PHP Datei um meine Signatur Aktuell zu halten. Nun war die Überlegung dieses über eine Eingabe Maske zu vereinfachen.

Dafür habe ich auch schon Google in Anspruch genommen, aber noch nicht das passende gefunden. Zwar konnte ich mir eine Eingabemaske erstellen und er hat dieses auch angezeigt, doch leider habe ich keine möglichkeit gefunden dieses so zu Speichern, bis zur neueingabe.

Eine SQL Datenbank habe ich dafür auch schon erstellt, doch der gefunde Code dafür, hat irgendwie nicht funktioniert.

Was ich möchte ist einfach nur eine Eingabemaske erstellen, die den Text bis zur neuangabe speichert (Text zur Zeit "153 km").

Vielen Dank für eure Hilfe.
 
Dafür brauchst du keine Datenbank. Einfach den Text vom Formular in eine Datei speichern.
 
Hi,

in PHP gibt es Möglichkeiten in Dateien schreiben und daraus zu lesen.
Das spart dir schon mal die Datenbank.

Wie das geht sollte dir Google verraten ;)

Gruß
 
So, soweit so gut, habe nun es soweit das es funtkioniert.
Es gäbe mit Sicherheit eine einfache Variante doch so habe ich es nun gelöst.

km.html

PHP:
<html>
<p><img src="km.php" alt="KM Eingabe"></p>
<form action="km2.php" method="post">
<input type="km" name="km">
<input type="submit" value="Abschicken">
</form>
</html>


km2.php

PHP:
<?php
fclose(fopen( 'km.txt', 'w+'));
echo '<img src="km.php" alt="">';
$km=$_POST['km'];
$ausgabe=$km;  
$datei=fopen("km.txt","a");
$output=fwrite($datei,$ausgabe);
fclose($datei);
?>

km.php

PHP:
<?php

header('Content-type: image/png');
$fp = fopen("km.txt","r");
if ($fp)
{
    while(!feof($fp))
    {
    $text = fgets($fp,100);
     }
fclose($fp);
}

$text = "$text"; //Zufallszahl
$img = imagecreatefrompng('fahrrad_vorlage.png'); //Backgroundimage
$color = imagecolorallocate($img, 0, 0, 0); //Farbe
$ttf = "DS-DIGIT.TTF"; //Schriftart
$ttfsize = 40; //Schriftgrösse
$angle = 0;
$t_x = 370;
$t_y = 128;
imagettftext($img, $ttfsize, $angle, $t_x, $t_y, $color, $ttf, $text);
imagepng($img);
imagedestroy($img);

?>


Jedoch wären da noch zwei Ding wo ich gerade nicht weiter komme. Ich würde gerne den Inhalt der Eingabe auf Zahlen beschränken. Und diese Maximal bis 5 Zeichen.
Was wäre da zu tun?
Und die KM, sollten Automatisch mit eingefügt werden.
 
Um maximal x Zeichen zuzulassen kannst du substr nehmen, um "km" hinzuzufügen einfach eine Stringkonkatenation.
 
Hallihallo,

ändere
HTML:
<input type="km" name="km">
zu
HTML:
<input type="text" name="km" maxlength="5">

ändere
PHP:
$text = fgets($fp,100);
zu
PHP:
$text = trim(fgets($fp,100)).'km';
 
Im Hinblick auf HTML5 wäre es evtl. gar nicht mal falsch, statt <input type="text" name="km"> gleich <input type="number" name="km" max="99999" min="0" /> zu verwenden. Setzt natürlich n HTML5-Doctype voraus, aber das ist echt der einzige Doctype, den man sich wirklich merken kann, das ist keine HErausforderung.
 

Ähnliche Themen

Zurück
Oben