Antworten auf deine Fragen:
Neues Thema erstellen

Ein PHP-Formular - mehrere mySQL-Datensätze

Phips_CH

Noch nicht viel geschrieben

Ich möchte ein Formular machen, wo ich mehrere Felder habe.

Für Tag1 hab ich: Datum, Von, Bis, Bemerkung.
Das Hab ich auch für Tag 2, 3, 4, 5 und Tag 6
für jeden Tag möchte ich einen neunen Datensatz mit den Spalten Datum, Von, Bis und Bemerkung.

Und das alles in einem Formular.
Leider komm ich bei dem was ich bis jetzt habe nicht weiter.

Code:
<?php echo $row_postendienstanfrage_2['podi_ID']; ?></p>
<form id="form1" name="form1" method="post" action="">
  <table>
    <tr>
      <td>&nbsp;</td>
      <td>Datum:</td>
      <td>von:</td>
      <td>bis:</td>
      <td>Bemerkung:</td>
    </tr>
    <tr>
      <td>Tag 1</td>
      <td><label for="datum_tag1"></label>
      <input type="text" name="datum_tag1" id="datum_tag1" /></td>
      <td><label for="von_tag1"></label>
      <input type="text" name="von_tag1" id="von_tag1" /></td>
      <td><label for="bis_tag1"></label>
      <input type="text" name="bis_tag1" id="bis_tag1" /></td>
      <td><label for="bemerkung_tag1"></label>
      <input type="text" name="bemerkung_tag1" id="bemerkung_tag1" /></td>
    </tr>
    <tr>
      <td>Tag 2</td>
      <td><input type="text" name="datum_tag2" id="datum_tag2" /></td>
      <td><input type="text" name="von_tag2" id="von_tag2" /></td>
      <td><input type="text" name="bis_tag2" id="bis_tag2" /></td>
      <td><input type="text" name="bemerkung_tag2" id="bemerkung_tag2" /></td>
    </tr>
    <tr>
      <td>Tag 3</td>
      <td><input type="text" name="datum_tag3" id="datum_tag3" /></td>
      <td><input type="text" name="von_tag3" id="von_tag3" /></td>
      <td><input type="text" name="bis_tag3" id="bis_tag3" /></td>
      <td><input type="text" name="bemerkung_tag3" id="bemerkung_tag3" /></td>
    </tr>
    <tr>
      <td>Tag 4</td>
      <td><input type="text" name="datum_tag4" id="datum_tag4" /></td>
      <td><input type="text" name="von_tag4" id="von_tag4" /></td>
      <td><input type="text" name="bis_tag4" id="bis_tag4" /></td>
      <td><input type="text" name="bemerkung_tag4" id="bemerkung_tag4" /></td>
    </tr>
    <tr>
      <td>Tag 5</td>
      <td><input type="text" name="datum_tag5" id="datum_tag5" /></td>
      <td><input type="text" name="von_tag5" id="von_tag5" /></td>
      <td><input type="text" name="bis_tag5" id="bis_tag5" /></td>
      <td><input type="text" name="bemerkung_tag5" id="bemerkung_tag5" /></td>
    </tr>
    <tr>
      <td>Tag 6</td>
      <td><input type="text" name="datum_tag6" id="datum_tag6" /></td>
      <td><input type="text" name="von_tag6" id="von_tag6" /></td>
      <td><input type="text" name="bis_tag6" id="bis_tag6" /></td>
      <td><input type="text" name="bemerkung_tag6" id="bemerkung_tag6" /></td>
    </tr>
  </table>



<?php
"INSERT INTO saer_podidate (podizei_datum, podizei_von, podizei_bis, podizei_bemerkung)
('$datum_tag1', '$von_tag1', '$bis_tag1', '$bemerkung_tag1'),
('$datum_tag2', '$von_tag2', '$bis_tag2', '$bemerkung_tag2'),
('$datum_tag3', '$von_tag3', '$bis_tag3', '$bemerkung_tag3'),
('$datum_tag4', '$von_tag4', '$bis_tag4, '$bemerkung_tag4'),
('$datum_tag5', '$von_tag5', '$bis_tag5', '$bemerkung_tag5'),
('$datum_tag6', '$von_tag6', '$bis_tag6', '$bemerkung_tag6'),";?>

<input type="submit" name="einfügen" id="einfügen" value="Senden" />
</form>

Am Schluss möchte ich aber nur die Tage eintragen, wo auch etwas drin steht.

Was mach ich falsch?

Gruss
Phips_CH
 

Curanai

Aktives Mitglied

Guten Morgen Phips,

Du gehst davon aus, dass Dein Eingabefeldinhalt sich in einer Variable befindet. Grundsätzlich ist das korrekt, aber Du "suchst" an der falschen Stelle. Deine "Technik" nennt sich noch "register globals" - mein Tipp: gleich abgewöhnen!

Deine Daten findest Du ankommend in der $_POST-Variablen als assoziatives Array. Hierbei ist der Feldname der jeweilige Key. Lass Dir mittels
Code:
var_dump($_POST);
mal ankommende Daten (nach Senden) anzeigen und Du siehst, was ich meine!

Wenn Du mir diesen Kommentar noch gestattest: Platziere bitte eine verarbeitende URL innerhalb des Attritubtes "action", welches die Daten entgegen nimmt! Ich kann bspw. nicht sehen, ob Du noch weitere Forms auf der Seite verwendest (für weitere Eingaben) oder wie Du die Daten letztendlich zum Server schickst (bspw. unter Verwendung von jQuery). Gem. W3C ist das erforderlich; vergleiche dort auch "4.10.1.3 Configuring a form to communicate with a server".

Angenehmen Tag wünsche ich.
 

gmartino27

Noch nicht viel geschrieben

Hallo Phips_Ch

Bist du aus der Schweiz?

Hier wird die Post-Methode besser erklärt:


Solltest du es nicht verstehen, melde dich wieder
Gianni
 

Phips_CH

Noch nicht viel geschrieben

Schonmal vielen Dank die Seite hat mir schonmal ein rechtes Stück weitergeholfen. Aber allerdings versteh ich noch nicht ganz wie ich den Eintrag in die DB machen soll. Soll ich nach jeder Abfrage ein Insert machen, wenn etwas im Texfeld steht?

@gianni ja ich komme aus der Schweiz Region Bodensee :)

Gruss Phips_CH
 

afr0kalypse

Allwissendes Karmameerschweinchen!

Nachdem du auf den Submit Button geklickt hast, lässt du ein php-script laufen, welches deine Tabellenzeilen auf Valide Einträge prüft. Danach schickst du dein aufbereitetes SQL Query ab.
 

Phips_CH

Noch nicht viel geschrieben

Ich hab nun alle Zeilen (bestehend aus je 4 Textfelder) in ein Array geschrieben.

Aber dies währe doch sicher Sinnvoll, wenn ich das nur mache wenn etwas drin steht oder?

Wie sieht denn das Formular aus?
Kann mir da jemand weiterhelfen?
 

ovbb

es gibt für alles eine weg

Hab mir deinen Post jetzt schon des öfteren durchgelesen und irgendwie verstehe ich immer noch nicht was du genau machen möchtest.

Persönlich würde ich auch mit einem Array arbeiten und erst bei der Verarbeitung darauf bezug nehmen ob ein Inhalt enthalten ist oder nicht. Direkt im Formular würde es ja nur per JS funktionieren da du ja am Client arbeitest.

Kannst ja das Formular einfach wieder an den Server senden der dann in der BusinessLogic das seine tut.

Denk mal, dass das in PHP nicht anders ist als in ASP.Net :)

Persönlich bevorzuge ich dabei das MVC-Pattern um eine Entkoppelung der einzelnen Komponenten zu erreichen. Dies ist aber immer von deinen Anforderungen abhängig.

lg, Dieter
 

Phips_CH

Noch nicht viel geschrieben

Hallo Dieter

Ich möchte ein Formular, wo ich bis zu 6 Datensätze in meine mySQL-DB gleichzeitig eintragen kann.
Jeder Datensatz besteht aus einer ID, den Textfeldern Datum, von, bis, Bemerkung und der ID aus der URL.
Die ID aus der URL weist auf einen Datensatz einer anderen Tabelle hin.

Das ich nicht für jeden Datensatz das Formular neu aufrufen muss, möhte ich alle in einem Formular erstellen.

Für jeden Datensatz, der aus vier Textfelden besteht, hab ich einen Tabellen-Zeile und diese dann in einem Array.
Nun möchte ich das in die DB schreiben. Und da kommen nicht mehr weiter.
Was passiert, wenn im Array nichts steht? Denn wenn das Textfeld leer bleit, ist doch auch nichts im Array.
Ich denke es bracuht eine Abfrage und dann eine Schleife die dann ein INSERT macht oder?

Gruss
Phips_CH
 

Curanai

Aktives Mitglied

Hey Phips,

wenn Dein INSERT immer noch genauso aussieht, bleibt meine Antwort weiterhin zu berücksichtigen. Dein INSERT kann so nicht funktionieren, da Du nicht die ankommenden Variablen verwendest (sofern im Vorfeld nicht hierzu gemacht).

Grüße.
 

ovbb

es gibt für alles eine weg

Was ich mich noch immer Frage ist, ob immer alle 6 Zeilen ausgefüllt werden müssen bzw. ob es ein Fallback (Client oder Server) gibt wenn ein Feld der Zeile nicht ausgefüllt ist?

Grundsätzlich ist eine Überprüfung der Daten immer am Server durchzuführen, auch wenn du schon eine Überprüfung am Client z.B. mit JS durchführst.

Ist die Überprüfung OK dann schreibt man die Daten in die DB.

Falls du keine große Datenflut erwartest (weiß ja nicht was du speichern möchtest bzw. wieviele gleichzeitige Benutzer zu erwartest) kannst duch auch in einer Schleife alle 6 Inserts ausführen.

Falls das Ganze zusammenhängt und Datensätze nur gemeinsam einen Sinn machen, kannst du die Inserts auch in eine Transaktion packen und am ende Commiten.

lg, Dieter
 

Phips_CH

Noch nicht viel geschrieben

Guten Tag

Sorry war das ganze Weekend weg.
Ich hab das Formular, wo ich die sechs Zeilen a vier Feldern habe:
Code:
<form id="form1" name="form1" method="POST" action="<?php echo $editFormAction; ?>">
  <table border="0">
    <tr>
      <th scope="col">&nbsp;</th>
      <th scope="col">&nbsp;</th>
      <th scope="col">Datum</th>
      <th scope="col">Von</th>
      <th scope="col">Bis</th>
      <th scope="col">Bemerkung</th>
    </tr>
    <tr>
      <td>Tag 1</td>
      <td>&nbsp;</td>
      <td><label for="tag1_datum"></label>
      <input type="text" name="tag1_datum" id="tag1_datum" /></td>
      <td><input type="text" name="tag1_von" id="tag1_von" /></td>
      <td><label for="tag1_bis"></label>
      <input type="text" name="tag1_bis" id="tag1_bis" /></td>
      <td><label for="tag1_bemerkung"></label>
      <input type="text" name="tag1_bemerkung" id="tag1_bemerkung" /></td>
    </tr>
    <tr>
      <td>Tag 2</td>
      <td>&nbsp;</td>
      <td><input type="text" name="tag2_datum" id="tag2_datum" /></td>
      <td><input type="text" name="tag2_von" id="tag2_von" /></td>
      <td><input type="text" name="tag2_bis" id="tag2_bis" /></td>
      <td><label for="tag2_bemerkung"></label>
      <input type="text" name="tag2_bemerkung" id="tag2_bemerkung" /></td>
    </tr>
    <tr>
      <td>Tag 3</td>
      <td>&nbsp;</td>
      <td><input type="text" name="tag3_datum" id="tag1_datum2" /></td>
      <td><input type="text" name="tag3_von" id="tag3_von" /></td>
      <td><input type="text" name="tag3_bis" id="tag3_bis" /></td>
      <td><label for="tag1_bemerkung"></label>
      <input type="text" name="tag3_bemerkung" id="tag3_bemerkung" /></td>
    </tr>
    <tr>
      <td>Tag 4</td>
      <td>&nbsp;</td>
      <td><input type="text" name="tag4_datum" id="tag4_datum" /></td>
      <td><input type="text" name="tag4_von" id="tag4_von" /></td>
      <td><input type="text" name="tag4_bis" id="tag4_bis" /></td>
      <td><label for="tag1_bemerkung"></label>
      <input type="text" name="tag4_bemerkung" id="tag4_bemerkung" /></td>
    </tr>
    <tr>
      <td>Tag 5</td>
      <td>&nbsp;</td>
      <td><input type="text" name="tag5_datum" id="tag5_datum" /></td>
      <td><input type="text" name="tag5_von" id="tag5_von" /></td>
      <td><input type="text" name="tag5_bis" id="tag5_bis" /></td>
      <td><label for="tag5_bemerkung"></label>
      <input type="text" name="tag5_bemerkung" id="tag5_bemerkung" /></td>
    </tr>
    <tr>
      <td>Tag 6</td>
      <td>&nbsp;</td>
      <td><input type="text" name="tag6_datum" id="tag6_datum" /></td>
      <td><input type="text" name="tag6_von" id="tag6_von" /></td>
      <td><input type="text" name="tag6_bis" id="tag6_bis" /></td>
      <td><label for="tag6_bemerkung"></label>
      <input type="text" name="tag6_bemerkung" id="tag6_bemerkung" /></td>
    </tr>
  </table>
  <p>
    <input type="submit" name="einfügen" id="einfügen" value="Senden" />
  </p>
  <p><?php echo $row_postendienst['podi_ID']; ?></p>
  <input type="hidden" name="MM_insert" value="form1" />
  <input name="hiddenField" type="hidden" id="hiddenField" value="<?php echo $row_postendienst['podi_ID']; ?>" />
 
 
 
</form>

Danach speichere ich sie in die Felder in ein Array:
Code:
$tag1 = array($tag1_datum, $tag1_von, $tag1_bis, $tag1_bemerkung);
$tag2 = array($tag2_datum, $tag2_von, $tag2_bis, $tag2_bemerkung);
$tag3 = array($tag3_datum, $tag3_von, $tag3_bis, $tag3_bemerkung);
$tag4 = array($tag4_datum, $tag4_von, $tag4_bis, $tag4_bemerkung);
$tag5 = array($tag5_datum, $tag5_von, $tag5_bis, $tag5_bemerkung);
$tag6 = array($tag6_datum, $tag6_von, $tag6_bis, $tag6_bemerkung);

Danach kommt der Teil wo ich nicht mehr weiter weiss.
ich denke da kommt irgendetwas mit

Code:
if  $tag1 ist nicht leer
INSERT tabelle feldname1, feldname2, feldname2 feldname3 VALUES $tag1_datum, $tag1_von, $tag1_bis, tag1_bemerkung;

und das ganze dann für jeden weiteren Tag.
ich kann mir gut vorstellen, dass das ganze auch kompakter und einfacher zu lösn währe. allerdings hab ich keine ahnung wie ich das machen soll.

Nein es wirden keine grössere Datenflut erwartet.
Daher deke ich das dieser Weg gar nicht so falsch sein wird.
Es werden auch nicht immer alle sechs Felder ausgefüllt sein. auch bei podi_bemerkung steht vermutlich eher selten etwas drin.

Gruss Phips_CH
 

ovbb

es gibt für alles eine weg

eine kleine googl suche später:

es sollte möglich sein, dass du direkt ein mehrdimensionales array in html erstellen kannst. http://php.net/manual/de/faq.html.php

das würde dann ggf so aussehen:

Code:
<tr>
<td>Tag 1</td>
<td>&nbsp;</td>
<td><label for="tag1_datum"></label>
<input type="text" name="MeinArray[1][datum]" id="tag1_datum" /></td>
<td><input type="text" name="MeinArray[1][von]" id="tag1_von" /></td>
<td><label for="tag1_bis"></label>
<input type="text" name="MeinArray[1][bis]" id="tag1_bis" /></td>
<td><label for="tag1_bemerkung"></label>
<input type="text" name="MeinArray[1][bemerkung]" id="tag1_bemerkung" /></td>
</tr>

hab hier mal den ersten tag umgeschrieben. für die anderen müsstest du dann noch eben den schlüssel 1 mit 2-6 erweitern.

normalerweise starten indexe ja mit 0 doch sollte es so auch funktionieren und musst nicht umdenken :)


danach könntest folgende konstruktion verwenden

Code:
// Coutn = 6. <= da wir ja mit 1 und nicht 0 beginnen, sonst würde 6 nie ausgelesen werden.
// alternative i < count(MeinArray) +1
for(int i = 1; i <= count(MeinArray)) {  
     // abarbeitung
     insert ...
     // zugriff auf das array mittels MeinArray[i][datum]
}

so ca. könnte das ablaufen ... hab sicher das eine oder andere $ vergessen. also vorsicht :)

lg, dieter
 

Phips_CH

Noch nicht viel geschrieben

So ich hab es jetzt soweit, dass ich mit echo, MeinArray ausgeben kann.
Schonmal vielen herzlichen Dank

Code:
<?php
// Coutn = 6. <= da wir ja mit 1 und nicht 0 beginnen, sonst würde 6 nie ausgelesen werden.
// alternative i < count(MeinArray) +1
for($i = 1; $i <= count($MeinArray[$i]); $i++){
// abarbeitung
    
     ("INSERT INTO saer_podidate (podizei_datum, podizei_von, podizei_bis, podizei_bemerkung) VALUES ($MeinArray[$i][datum], $MeinArray[$i][von], $MeinArray[$i][bis], $MeinArray[$i][bemerkung])");
    
     echo $MeinArray[$i][datum], $MeinArray[$i][von], $MeinArray[$i][bis], $MeinArray[$i][bemerkung];
// zugriff auf das array mittels MeinArray[i][datum]
}

Allerdings funktioniert mein INSERT nicht.
Ich hab alles vorwärts und rückwärts durchgesehen, und mir fällt nichts auf.
Der Tabellenname stimmt, die Felder stimmen, die Verbindung zu DB steht auch.
Kann es sein, dass die Tabelle noch zwei Felder mehr hat? ID und FremdID?

Gruss
Phips_CH
 

Curanai

Aktives Mitglied

Gut, es geht weiter. ^^

("INSERT INTO saer_podidate (podizei_datum, podizei_von, podizei_bis, podizei_bemerkung) VALUES ($MeinArray[$i][datum], $MeinArray[$i][von], $MeinArray[$i][bis], $MeinArray[$i][bemerkung])");

Würdest Du den auf eine Datenbank schicken (was Du mit dieser Schreibweise allein nicht machst), würdest Du für einige Spalten Fehlermeldungen bekommen.

Wo ist Deine Datenbank und steht die Verbindung? Ich hoffe ja eigentlich insgeheim, dass das bei Dir wieder beim Kopieren flöten gegangen ist, aber da fehlt was recht zwingendes, um Deinen Datensatz in die präferierte DB einzutragen. :)

Inhaltlich hat Dein vorbereiteter String noch große Schwächen - und Dein Array wäre mit ['bis'] (statt [bis]) besser zu benutzen. Der Einsatz eines Errorlogs bzw. der Blick da rein hätte Dir jede Menge Notices gegeben mit dem Hinweis auf "undefined index". Sollte Dir nicht klar sein, wo Du ein Errorlog einsehen kannst, teile uns (oder nur mir) das mit und Dir wird geholfen.

Sooo ... und dann reden wir noch über Spalten und zugehörige Typen. Typen sind hier Dinge wie Integer, String, Floats, Blobs usw. Ich gehe davon aus, dass ['bemerkung'] ein String ist - leider ist dieser in Deinem angedachten Query aber gar nicht als solcher kenntlich.

Um Dir ein wenig die Arbeit zu erleichtern, solltest Du eine andere Schreibweise für den Insert wählen (schneller, übersichtlicher und leichter zu erweitern):

Code:
$insert = "INSERT INTO
   `saer_podidate`
SET
   `podizei_datum`=$MeinArray[$i]['datum'],
   `podizei_von`=$MeinArray[$i]['von'],
   `podizei_bis`=$MeinArray[$i]['bis'],
   `podizei_bemerkung`=$MeinArray[$i]['bemerkung'];";

` = ticks ... diese setzt man um Tabellen- und Spaltennamen, um dem MySQL-Parser (und nur dem) zu sagen, dass es sich um vorgegebene Namen handelt und bspw. keine Konstanten, Methoden o. ä. aus MySQL. Beschleunigt den Query dann doch (gerade, wenn es mehr werden).

Wie Du siehst, ist diese Schreibweise von mir als Zuweisung eines Strings auf eine Variable umgeändert. Die Einrückung sorgt für Übersicht; bei der Ausführung des Queries später stört dies keineswegs.

$insert ist dann das, was Du Deinem Datenbankobjekt etc. gibst, damit der das dort hinein reicht. ;)

Aber da war ja noch was mit den Datentypen, nicht wahr? Und genau die habe ich hier nicht berücksichtigt - das wirst Du selbst tun müssen (denn nur Du weißt, ob die Spalte "podizei_datum" eine Ziffer/Zahl ist oder ob es doch Sinn macht, einen String mittels Double-Quotes zu bilden.

Wichtig: Benutzt Du dies nur für Dich bzw. intern? Falls nicht, solltest Du Dir ein paar Informationen zu "prepared statements" (mysqli_*/PDO) oder zumindest einer vernünftigen Funktion beschaffen, die XSS/CSRF und/oder sonstigen Dreck aus Deiner DB hält. Du nimmst aktuell blind die Daten an, die aus dem Formular kommen und schickst diese an die Datenbank - das ist ein Todbringer, wenn "public" im Web.

Gute Nacht.
 
Zuletzt bearbeitet:

ovbb

es gibt für alles eine weg

@Curanai: ich finde es immer super, wenn man auch als erfahrener User noch viele Kleinigkeiten mitnehmen kann. Das mit den ticks wusste ich z.B. nicht :)

Das Insert-Statement müsste noch mit einem " vor dem ; geschlossen werden.

lg, Dieter
 

Curanai

Aktives Mitglied

Diese "ticks" sind aber auch nur auf MySQL hilfreich! Diese und LIMIT (wann immer es geht; gerade bei UPDATES!) sind für performantere Arbeiten und viele Queries etc. einfach unabdingbar.

Um vielleicht auch noch den TO in eine andere Denke zu drücken, die sich "Performance" (jetzt oder später) nennt: for() als inkrementelle Zählschleife und das Abfeuern von sechs INSERTS ist unnötig - das geht in einem einzigen Query (mein Umstellen oben bezog sich nur auf den einen Insert). Multiple Inserts in eine Table gehen natürlich dann nach dem Schema ...

Code:
INSERT INTO
`table`
   (`spalte1`, `spalte2`, ... `spalteN`)
VALUES
(value1, value2, ... valueN),
(value1, value2, ... valueN),
...

Achte hierbei auf Spaltenanzahl und Gesamtlänge des Befehls! Wenn es bspw. 600 statt lediglich 6 wären, sollte man Pakete erstellen usw. (kennt ihr alle - weiß ich doch; sei nur nochmals erwähnt).


EDIT: Nein, nicht nur mit " geschlossen werden - ich verwende bei langen Queries bei mir (da als buildUp im Source häufig anzutreffen) das Semikolon am Ende als Marker für "hier ist der Query-Build zu Ende" - also fehlte in meinem Posting sogar ein '";' (ohne '), was nun oben ergänzt ist. Danke für den Hinweis.
 

Phips_CH

Noch nicht viel geschrieben

Ich schaff es nicht. Sorry

Ich hab das INSERT INTO in die Schleife geschrieben. ich hab die Anweisung auch versucht in einer Variablen in der Schleife aufzurufen.
ohne Erfolg.
Wenn ich es so mache funktioniert es nicht.

Code:
$insert = ("INSERT INTO
  `saer_podidate`
SET
  `podizei_datum`= $MeinArray[$i]['datum'],'date',
  `podizei_von`=$MeinArray[$i]['von'], 'date',
  `podizei_bis`=$MeinArray[$i]['bis'], 'date',
  `podizei_bemerkung`=$MeinArray[$i]['bemerkung'], 'date'");
 

Curanai

Aktives Mitglied

oO ... eeeehm ... so macht man das auch nicht und mit Typisierung bist Du nicht so ganz vertraut, richtig? Du kennst schon den Unterschied zwischen "Zahl in DB" und "String in DB" bspw.? Woher auch immer Du die Schreibweise hast - diese ist total falsch.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.611
Beiträge
1.538.342
Mitglieder
67.524
Neuestes Mitglied
BSKGA
Oben