Antworten auf deine Fragen:
Neues Thema erstellen

Daten per Klick speichern?

diekate

Noch nicht viel geschrieben

Hallo ich brauche eure Hilfe.
Es handelt sich um ein Buchungssystem:
Stellt euch vor da ist eine Karte, auf der ihr einen Sitzplatz auswählt, indem ihr ihn anklickt.
(dieser soll anschließend in einer datenbank gespeichert werden)
wie übergebe ich die Zahl des Sitzplatzes?

normal habe ich ja input-tags mit namen und method = post.... wie funktioniert das hier? wie kann ich eine Zahl durch Klicken (auf ein Bild) speichern?

Hoffe ich habe es einigermaßen verständlich beschrieben...
Liebe Grüße und danke im Voraus
 

lachender_engel

Aktives Mitglied

Irgendwie muss Deine Webseite ja mitbekommen welcher Sitz angeklickt wurde. Den markierst Du sicher irgendwie (JavaSkript?!). In der selben Prozedure speicherst Du die Sitznummer ab und übergibst, sie wenn der Butten "Reservieren" geklickt wird.
 

diekate

Noch nicht viel geschrieben

ok ich glaube ich habe eine idee, wie ich das problem löse... aber jetzt tut sich eine andere auf ^^ gibt es eine super tolle lösung, wie ich Sitze anklickbar machen kann ohne jetzt 100 div's auf einem bild zu platzieren? sag "ja" =D
 

Pixelaner

Der Pixelaner

Nabend,

du könntest jedem Sitz im Markup (html5) ein data Attribut mit auf den Weg geben. Dieses könnte zB. data-seat-id lauten. Per Klick Event kannst du die ID des soeben angeklickten Sitzes abfangen und per Ajax an ein Script zum speichern in der Datenbank übergeben.

Beste Grüße

Auf einer großen Kinowebsite habe ich grad mal bei der online Reservierung nachgeschaut. Dort werden auch X divs mit entsprechenden IDs ausgegeben.
 
Zuletzt bearbeitet von einem Moderator:

diekate

Noch nicht viel geschrieben

krass.. ajax kp ^^ hatte jetzt eher so gedacht:

im html:
<form method="post" action="senden.php">
<input type=hidden name="platznummer" value=0/>
</form>
<div onclick="blabla()"></div>

js:
function blabla(){
document.getelementbyname('platznummer').value='10';
}

weiß jetzt nicht obs fehlerfrei ist, aber nach dem prinzip ;) weiß nur noch nicht ob das auch so klappt ^^
 

lachender_engel

Aktives Mitglied

ok ich glaube ich habe eine idee, wie ich das problem löse... aber jetzt tut sich eine andere auf ^^ gibt es eine super tolle lösung, wie ich Sitze anklickbar machen kann ohne jetzt 100 div's auf einem bild zu platzieren?
Lösungen gibt es. Nur irgendwie musst Du jeden Sitz individualisieren. Warum also nicht mit div's? Wenn Du die in PHP durch eine Schleife erstellen lässt, ist das auch kein großer Aufwand.
 

lachender_engel

Aktives Mitglied

...
<div onclick="blabla()"></div>

js:
function blabla(){
document.getelementbyname('platznummer').value='10';
}
Wenn Du dem onclok-Event direkt die Sitznummer übergibst dann brauchst Du auch nur eine Funktion die das Hidden-Feld befüllt. Denn so, wie Du das jetzt machst, braucht es für jeden Sitz eine eigene Funktion (da Du die Sitznummer feste hinterlegst).
 

diekate

Noch nicht viel geschrieben

@lachender engel
hm mit div's ... das wirkt mir so unsicher, sehr fehleranfällig oder?
könntest du mir einen riesen gefallen tun und mir das als script schreiben mit dem onclick oder ein tutorial zeigen? hab grad keine ahnung wie du das meinst ^^ bin auch noch ziemlich neu mit php und js ^^ sorry...

@Pixelaner
das mit dem data-attribut versteh ich grad auch nicht so ganz ^^ hast du n beispiel?


auf jedenfall schonmal vielen dank
 

fakerer

Aktives Mitglied

wie schon erwähnt klick mit ajax/jquery abfangen und dann die Nummer an ein Formular schicken

oder die könntest auch zb Radiobuttons oder Checkboxen verwenden diese einfach mit einer Grafik belegen und das Element selber ausserhalb des Sichtbereichs schieben, dann kannst du mit nem form arbeiten ohne hidden Element, so wie du es gern hättest wenn ich das richtig mitbekommen habe.
wobei du das ja dann auch wieder per ajax abschicken musst ausser du machst n Speicherbutton

ich weis ja nicht wie du das ganze umsetzt aber die Elemente kannst du ja auch einfach in einer schleife erzeugen dann musst nicht 1000 divs erstellen
 

diekate

Noch nicht viel geschrieben

wie würde das aussehen wenn ich die in einer schleife erzeuge? ^^ sry sicher voll einfach, aber wie gesagt, bin da neu ^^
 

Pixelaner

Der Pixelaner

das mit dem data-attribut versteh ich grad auch nicht so ganz ^^ hast du n beispiel?

yes, zB.:

HTML:
<div class="seat-row">
  <div data-seat-id="1" class="seat"></div>
  <div data-seat-id="2" class="seat"></div>
  <div data-seat-id="3" class="seat"></div>
  <div data-seat-id="4" class="seat"></div>
  <div data-seat-id="5" class="seat"></div>
</div>
 

diekate

Noch nicht viel geschrieben

ah ok verstehe wie du das meinst...bin gerade nur am überlegen ob ich das mit meinen fähigkeiten umsetzen kann ^^
 

lachender_engel

Aktives Mitglied

wie würde das aussehen wenn ich die in einer schleife erzeuge? ^^ sry sicher voll einfach, aber wie gesagt, bin da neu ^^
Ungefähr so:
PHP:
$iSitze = 30; // max. Anzahl an Sitze
$iReihen = 5; // max. Anzahl an Reihen - MUSS bei Teilung durch $iSitze eine Ganzzahl ergeben!
$iSitzproReihe = ($iSitze / $iReihen); // Anzahl Sitze pro Reihe
$sClassSitz = 'sitz'; // Name der Klasse für einen Sitz
$sClassLetzterSitz = 'sitz letzter'; // Name der Klasse für den letzten  Sitz in einer Reihe

$iReihe = 1; // Beginn mit der ersten Reihe
for ($iSitz=1; $iSitz <= $iSitze; $iSitz++) {

  if($iSitz == $iSitzproReihe * $iReihe) // Ist wenn Sitzanzahl pro Reihe erreicht?
  {
  $sClass = $sClassLetzterSitz; // class für den letzten Sitz einer Reihe festlegen
  $iReihe++; // Reihe erhöhen
  } else {
  $sClass = $sClassSitz;
  }
 
  /*
  * Ab hier definierst Du wie die Ausagbe des Sitzes aussehen soll
  *  verwende die Variable $iSitz für die Nummer des Sitzes
  */
  echo '<div class="'.$sClass.'">Sitz '.$iSitz.'</div>';
}
 
Zuletzt bearbeitet:

diekate

Noch nicht viel geschrieben

jau cool =) danke dir
werd nu erstmal ins bettchen und morgen mal rumprobieren, aber vielen dank für die hilfe erstmal =) hat mir sehr weitergeholfen
 

ovbb

es gibt für alles eine weg

Glaub das Script von lachender_engel ist schon mal ein Anfang.

Mir stellt sich da aber gleich wieder eine Flut an Fragen:
- gibt es immer einen geordneten Sitzplan?
- ist ein Sitzpaln mit unterschiedlichen Sitzanzahlen möglich?
- gibt es barrierefreie Sitzplätze?
- ...

Hab das mal für eine Ausstellung umgesetzt und dabei ein svg-Datei aus der DB generiert auf welche man dann leicht mit JS zugreifen kann bzw. die Nummern abgreifen kann.
 

Myhar

Hat es drauf

Gut beobachtet! Da passt jemand auf! ;-)
Danke für den Hinweis. Habe meinen Kommentar im Skript angepasst.

Du schreibst, dass iReihen (ich spare mir mal die $) bei einer

Teilung durch $iSitze eine Ganzzahl ergeben [..] MUSS
iReihen ist nach wie vor 5, iSitze ist 30. Teilt man iReihen durch iSitze, also 30/5, so erhält man nach wie vor 0,1666666.
Wenn du schon so "herumschreist" (groß-schreiben ist im Internet eine Form von herumschreien), dann stelle wenigstens sicher, dass deine Behauptungen einen Sinn ergeben.
Ich denke, du willst sagen, dass bei der Teilung von iSitze durch iReihen eine Ganzzahl herauskommen soll?
btw, warum sollte es nicht auch Sitzordnungen gehen, bei denen in der letzten (oder ersten, mittendrin, sollte egal sein) Reihe mal kein Sitz vorkommt? Das könnte man doch auch berücksichtigen.
 

lachender_engel

Aktives Mitglied

Du schreibst, dass iReihen (ich spare mir mal die $) bei einer iReihen ist nach wie vor 5, iSitze ist 30. Teilt man iReihen durch iSitze, also 30/5, so erhält man nach wie vor 0,1666666.
Dann haben wir beide verschiedene naturwissenschaftliche Ausbildungen. Selbst ohne Taschenrechner ist bei mir 30/5=6 . Umgekehrt, 5/30, macht 0,1666666.
Wenn du schon so "herumschreist" (groß-schreiben ist im Internet eine Form von herumschreien), dann stelle wenigstens sicher, dass deine Behauptungen einen Sinn ergeben.
Ich schreie nicht sondern führe im PHP Code einen Hinweis, mit der Großschreibung.
btw, warum sollte es nicht auch Sitzordnungen gehen, bei denen in der letzten (oder ersten, mittendrin, sollte egal sein) Reihe mal kein Sitz vorkommt? Das könnte man doch auch berücksichtigen.
Geht alles. Doch ich wollte dem TE nur die Schleife veranschaulichen und nicht ihm sein Buchungssystem schreiben.
 

Myhar

Hat es drauf

Dann haben wir beide verschiedene naturwissenschaftliche Ausbildungen. Selbst ohne Taschenrechner ist bei mir 30/5=6 . Umgekehrt, 5/30, macht 0,1666666.

Shame on me. Reihen durch Sitze (5/30), wie in deinem Quellcode angegeben, sollte dort stehen. Das kommt vom übereiligen Tippen (Wie wohl auch dein Fehler, dass dort eine Ganzzahl rauskommen soll)
 
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.614
Beiträge
1.538.351
Mitglieder
67.525
Neuestes Mitglied
mgtaucher
Oben