Portal > Foren > Ausschreibungssprachen und clientseitige Programmierung > JavaScript und AJAX > Wie bekommt man "action" ohne Seitenwechsel?
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 17.05.2006, 22:31 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 16.05.2006
Beiträge: 9
Standard Wie bekommt man "action" ohne Seitenwechsel?

Hallo zusammen,

in vielen Webshops kann man einen Artikel per Klick
in den Warenkorb legen, ohne dass die aktuelle
Artikelseite verlassen wird - zumindest sieht das
so aus. Es wird stattdessen z.B. nur das Warenkorb-
Icon anders gefärbt oder es fängt an zu blinken oder
ähnliches. Manchmal geht auch ein Popup auf, in dem
man informiert wird: "Dem Warenkorb wurde ein
neuer Artikel hinzugefügt".

Frage also: Wie kann man aus einem Formular
Daten in der Session speichern - sprich: ein PHP-Skript
aufrufen - sodass die aktuelle Seite nicht (sichtbar)
verlassen wird?

Im HTML-Code der Datei selbeSeite.html habe ich
ganz naiv folgendes definieren:
Code:
<form action="/shop/1.php" onclick="self.location.href='selbeSeite.html'" method="post">
Nunja, selbeSeite.html wird durchaus geladen, aber mein
Shopskript /shop/1.php wird scheinbar nicht abgearbeitet.

Danke für eure Tipps, die mir bisher schon sehr viel
geholfen haben auf meinem kurzen Weg mit PHP

Viele Grüße aus den Alpen,
Frank aka Perseus

Geändert von Perseus (17.05.2006 um 22:35 Uhr)
Perseus ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.05.2006, 22:34 Nach oben    #2
me pro ok?
 
Benutzerbild von Lars
 
Registriert seit: 07.09.2005
Ort: Pulheim bei Köln
Beiträge: 964
Standard

Code:
<form [..] onsubmit="return false; doSth();">
__________________
Gedanken aus Draht stricken einen Zaun.
Lars ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.05.2006, 23:06 Nach oben    #3
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.653
Standard

perseus du kannst auch die komplette breite des forums nutzen du musst nicht jede zeile manuel am ende des editors umbrechen
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.05.2006, 01:01 Nach oben    #4
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.512
Standard

Hallo,
wie das Lars schon andeutete ist das weder ein Perl-, noch ein PHP-Problem. Sofern du die Seite nicht neu laden möchtest ist der Einsatz von JavaScript wohl unumgänglich.

Ich verschiebe also mal in das entsprechende Forum und benenne den Threadtitel um.

Der Thread wurde verschoben, wegen ...
... Postings im falschen Forum. Bitte beim nächsten Mal darauf achten.,

verschoben
Ben ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.05.2006, 01:37 Nach oben    #5
Neuer Benutzer
 
Registriert seit: 16.05.2006
Beiträge: 9
Standard

Zitat:
Zitat von WarrenFaith
perseus du kannst auch die komplette breite des forums nutzen du musst nicht jede zeile manuel am ende des editors umbrechen
Yep .... nur sind schmale Textspalten, vor allem bei
langen Texten, wesentlich leichter zu lesen. Vergleiche
Zeitungsspalten mit DIN-A4-Querformat-Volltext
Perseus ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.05.2006, 01:59 Nach oben    #6
Martin Breuer
 
Benutzerbild von WarrenFaith
 
Registriert seit: 17.08.2005
Ort: Berlin
Beiträge: 1.653
Standard

dafür hat gott kleine auflösungen gemacht.
ausserdem sind sind zeitungsspalten nebeneinander, wenn du also 2 spalten machts wäre das wiederum sinnvoll. so ist es allerding nur verschwendeter platz.
__________________
I did it my way - Senseless-Blog
WarrenFaith ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.05.2006, 02:17 Nach oben    #7
Neuer Benutzer
 
Registriert seit: 16.05.2006
Beiträge: 9
Standard

Physikalisch ist das fast nichts, schlimmstenfalls 1 Byte
je Zeilenende (LF). Diese Forumsoftware zeigt das so
an, aber deswegen müssen nicht mehr (Programm-)
daten übertragen oder interpretiert werden.

... und dann gibt's da noch die unumgebrochenen Emails,
die mich regelmäßig (vor allem beim Zitieren) zur Weißglut
treiben. Nein, nein, ich mache weiterhin reichlich Gebrauch
von der Enter-Taste. Das ist wohl schon in den Genen.

Zitat:
Zitat von WarrenFaith
-[ Glaube an die Erfüllbarkeit surrealer Träume ]-
-[ Trying to establish voice contact ... yell into keyboard ]-
-[ Wahrscheinlich ist höchstwahrscheinlich genauso unwahrscheinlich wie wahrscheinlich. ]-
-[ Senator Rock ins Gefängnis bringen. Klar! Und nach dem ich das Wunder vollbracht hab, geh ich los und schlag Gott K.O. ]-
Wenn du unter all deinen 553 Beiträgen diese ausführliche
Signatur hängen hast, dann ist das auch ziemlich viel Platz,
noch dazu redundant

... aber vielleicht fällt ja doch noch jemandem etwas zu
meiner ursprünglichen Frage ein?!

Die nach Anregung geänderte Zeile
Code:
<form action="/shop/1.php" onsubmit="return false; Added();" method="post">
verlässt zwar die aktuelle Seite nicht mehr, führt aber wohl
auch das Skript /shop/1.php nicht aus ...
Perseus ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.05.2006, 09:12 Nach oben    #8
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 539
Standard

es gibt zwei möglichkeiten:
  1. Iframe
    Du kanns das shop-skript in nem iframe öffnen (der ja garnicht sichtbar sein muss) und dort das produkt in den warenkorb legen lassen. das funktioniert sogar ohne javascript (also könnte der thread theoretisch wieder ins andere forum ) indem du im form tag ein target attribut setzt. js kannst du aber zur unterstüzuung verwenden um zb das warenkorb-icon blinken und wackeln und rufen lassen kannst
  2. AJAX
    Mit ajax kannst du dynamisch seiteninhalte nachladen bzw an den server senden. dazu muss der user aber js aktiviert haben.
welche lösung du nimmst ist relativ egal, du musst dir nur gedanken machen, ob die seite auch ohne js funktionieren soll oder nicht. es gibt aber auch die möglichkeit für user ohne js den iframe zu verwenden und bei usern mit aktiviertem javascript und ajax support das ganze über ajax laufen zu lassen.

Zitat:
Zitat von Lars
<form [..] onsubmit="return false; doSth();">
ähmm das dürfte imo nicht funktionieren wenn du erst false zurückgibts und dann noch code ausführen willst...
__________________
Weißt Bescheid - Scheiß wie weit

Geändert von $traight-$hoota (18.05.2006 um 09:16 Uhr)
$traight-$hoota ist gerade online  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:55 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45