Zum Inhalt springen

Schiebepuzzle in PHP


Empfohlene Beiträge

Hat jemand einen Script das ein Schiebepuzzle komplett in PHP geschrieben ist ???

Im internet gibt es reichlich Scripte aber allle nur in JavaScript geschrieben, und ich bräuchte eine Lösung für PHP.

Kennt einer eine Quelle wo ich so ein Script finde ??? Oder jemand einen Lösungsansatz für das problem hat?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hmm - so ein Schiebepuzzle in PHP ist ein wenig unpraktisch - denn PHP arbeitet ja auf dem Server - das heißt, du müßtest bei jedem Klick die Seite neu laden...

Ohne Animationen (d.h. nach jedem Klick lädt die Seite neu und je zwei Teile sind halt vertauscht) wäre es aber möglich: Du baust dazu am besten eine Tabelle, die alle Bildteile enthält. Diese bekommen dann jeweils eine Imagemap verpasst, die eigene Links für "nach oben", "nach unten", nach links" und "nach rechts" enthält.

Wenn man nun diese Links als PHP_SELF mit passenden Variablen füttert, kann das Skript halt nach jedem Klick ermitteln, welcher Link angeklickt wurde und was ausgetauscht werden soll...

Um die Reihenfolge der anderen Teile soweit beizubehalten, würde ich ihre Position z.B. in einer Session speichern...

Damit sollte man doch schonmal einen Anfang haben, oder? Wenn du was genauer brauchst, einfach fragen...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Originally posted by beetFreeQ

Hmm - so ein Schiebepuzzle in PHP ist ein wenig unpraktisch - denn PHP arbeitet ja auf dem Server - das heißt, du müßtest bei jedem Klick die Seite neu laden...

Ohne Animationen (d.h. nach jedem Klick lädt die Seite neu und je zwei Teile sind halt vertauscht) wäre es aber möglich: Du baust dazu am besten eine Tabelle, die alle Bildteile enthält. Diese bekommen dann jeweils eine Imagemap verpasst, die eigene Links für "nach oben", "nach unten", nach links" und "nach rechts" enthält.

Wenn man nun diese Links als PHP_SELF mit passenden Variablen füttert, kann das Skript halt nach jedem Klick ermitteln, welcher Link angeklickt wurde und was ausgetauscht werden soll...

Um die Reihenfolge der anderen Teile soweit beizubehalten, würde ich ihre Position z.B. in einer Session speichern...

Damit sollte man doch schonmal einen Anfang haben, oder? Wenn du was genauer brauchst, einfach fragen...

Wenn er die Besucher verscheuchen will, ist das ein Ansatz dazu.:rolleyes:

Die Technik ist einwandfrei. Aber man stelle sich mal vor, das Schiebepuzzle ist grafisch etwas aufwendiger und der Besucher muss jedes mal warten, bis die Seite aufgebaut ist...

Ich rate ab. Oder musst du das als Hausaufgabe machen?:confused:

Link zu diesem Kommentar
Auf anderen Seiten teilen

Meiner Meinung nach eine komische Aufgabe, aber hier ein Ansatz. Ich nehm einfach mal neun Felder an. Hab zumindest noch kein anderes gesehen.

- Zerleg das Bild wie es bei solchen Puzzles übrig ist. Eines löschst du, den anderen gibst du kurze Namen. Am besten einfach a.gif bis h.gif. Und ein leeres GIF als i.gif.

- Bau dir ein Array mit neun Werten. Belege die Werte durcheinander mit a bis i.

Das machst du aber nicht absolut, sondern fragst zuerst ab, ob die Werte schon belegt sind, sonst kannst du sie nicht mehr dynamisch belegen.

- Gib die Bilder dynamisch in eine drei Mal drei Felder große Tabelle aus.

- Die Bilder, deren Arrayindex um eins oder um vier größer oder kleiner als der Index des leeren Bildes ist, kann man bewegen, also anklicken. Da machst du einen Link hin.

- Der Link muss bewirken, dass das leere Bild mit dem angeklickten Bild vertauscht wird. Bei einer erneuten Ausgabe sollten also beispielsweise die Werte Bildfolge[7] und Bildfolge[8] die Werte tauschen.

- Die arraywerte könntest du mit Unterstrich in einer Variable übergeben, die du danach exploden lässt (z.B. folge=a_b_c_d_e_f_g_h_i

Das wäre übrigens die Folge, bei der die Meldung "Sie haben gewonnen" oder sowas ausgegeben wird).

Ich hoffe, das ist klar geworden, ist ja doch etws kompliziert.;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...