• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Variable auslesen

Der Blödsinn kommt nicht von mir, sondern von einem Programierer. Ich würde ja die jeweiligen Programmdateien mal hochladen, dass geht aber hier leider nicht. Ich denke aber mal, weil es möglicherweise aus dem Zusamenhang gerissen wurde, sieht es wie Blödsinn aus. Ist es aber bestimmt nicht. Wie gesagt, eine php-Datei kann man hier nicht hochladen. Hast Du Lust auf nen begrenzten Job?
 
Werbung:
...Wie gesagt, eine php-Datei kann man hier nicht hochladen...
Seit wann kann man hier keine Dateien hochladen? Also wenn mich meine AUgen nicht in die Irre führen, sehe ich unter dem Textfeld 3 Buttons:
- Antwort erstellen (bzw. Auf dieses Thema antworten)
- Datei hochladen (Aha da ist ja was!)
- Weitere Einstellungen... (bzw. Vorschau)

Alternativ kopier den Inhalt der PHP-Datei in das Textfeld hier rein und poste es innerhalb der [CODE ] [ /CODE]-Tags.
 
Zuletzt bearbeitet:
Wie schreib ich das richtig, damit es hier rein passt?

Gar nicht. Das Datum wird beim Anklicken automatisch als String ins Formular übertragen; das hatte ich dir bereits gesagt.
Code:
<input id="datum" type="hidden" value="Fr, 04.12.2015" name="datum">

$foo = $_POST['name'];
// tu was mit $foo

Wenn du damit nicht klar kommst, dann gib es doch an die Jobbörse.
 
Werbung:
Hallo Tronjer, funktioniert leider nicht. Der String ($foo) ist leider leer.

<form id="ticketformular" name="ticketformular" method="POST">
<input type="hidden" name="event" value="<?PHP echo nz(thema); ?>" />
<input type="hidden" name="seite" value="<?PHP echo nz(seite); ?>" />
<input type="hidden" name="bereich" value="<?PHP echo nz(bereich); ?>" />
<input id="datum" type="hidden" name="datum" value="<?""; ?>" />

Wie soll das auch gehn mit $_POST['name']. Es gibt bei der Eingabe verschiedene
Angaben mit 'name'. Woher soll das Array wissen, welcher 'name' gemeint ist?
Morgen kopier ich mal den Code eines Veranstaltungsformular und den Code des
Buchungsformulars hier rein.

MfG
 
Hallo, funktioniert leider auch nicht. Der String ist leer. Ich kopier mal den Code eines Veranstaltungsformulars und den Code des Bestellformulars für Tickets hier rein:

Hier der link des Formulars: http://www.business-weekend.info/musicaldinner/dinner-show-leipzig-tickets,themendinner.html

?PHP
require('../inc/basic.php'); //diese Datei ist codiert und wird in jedem Formular verwendet
require('_setup.php');
?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de-DE" lang="de-DE">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<?PHP
include('../inc/head.html');
?>
<link href="../css/detail.css" rel="stylesheet" type="text/css" media="all" />
<link href="../css/ticket.css" rel="stylesheet" type="text/css" media="all" />
<script src="../javascripts/formsubmit.js" type="text/javascript"></script>
<script src="../javascripts/bildwechsel.js" type="text/javascript"></script>
<script src="../javascripts/detail.js" type="text/javascript"></script>
<link href="../css/formsubmit.css" rel="stylesheet" type="text/css" media="all" />
<?PHP
include('../inc/head_ende.html');
?>
</head>
<body>
<div id="topBG">
<div id="topBG_verlauf">
<div id="wrapper">
<?PHP
include('../inc/menu.html');
?>
<div id="bwDetail" class="<?PHP echo bereich; ?>">
<div class="bw1"></div>
<div class="bw2"></div>
<div class="bw3"></div>
<div class="bw4"></div>
</div>
<div id="content" class="<?PHP echo bereich; ?>">

<div class="links">
<?PHP echo $detail['ticketBanner']; ?>
<h1><?PHP echo $detail['h1']; ?></h1>
<h2><?PHP echo $detail['h2']; ?></h2>
<div id="links_content">
Das ist das Motto unser einzigartigen Musical Dinner Show im Dezember 2014. Seien Sie mittendrin im Geschehen und lassen Sie sich für einige Stunden in eine Welt der Musik und Fantasie entführen.
<p>Begleiten Sie uns in die Welt der Musicals. Es erwartet Sie stimmgewaltiger Live-Gesang und liebevoll arrangierte Inszenierungen der Darsteller in aufwendigen und stilechten Kostümen auf Theater-Niveau.</p>
<p>Begleitet von einem exquisiten 4 Gänge-Menü werden dem Gast die Höhepunkte aus den beliebtesten Musicals hautnah serviert. Ein unvergesslicher Abend und ein fantastisches Erlebnis für die ganze Familie!</p>
<div class="eventhighlight">
<h3>Mit den Höhepunkten aus</h3>
<p>Die Schöne und das Biest</p>
<p>Die Rocky Horror Show</p>
<p>Das Phantom der Oper</p>
<p>Tanz der Vampire</p>
<p>Buddy Holly</p>
<p>Elisabeth</p>
<p>Cabaret</p>
<p>Grease</p>
<p>Abba</p>
<p>Cats</p>
</div>
und viele mehr.
<p>Begleiten Sie das Phantom der Oper durch die Katakomben von Paris. Treffen Sie Elisabeth die Kaiserin von Österreich. Fühlen Sie die heißen Rhythmen des Dirty Dancing und den flotten Hüftschwung der Abba-Girls. Die 50er Jahre erwachen mit Grease und Buddy Holly wieder zum Leben. Treffen Sie die Schöne und das Biest und die kleine Meerjungfrau und viele weitere unvergessliche Musical-Charaktere in einer einmaligen Show wieder. Noch nie war Musical so nah.</p>
<?PHP echo $detail['eventanfrage']; ?>
</div>
<div id="ticketformular_wrapper">
<?PHP
include('../inc/ticket.html');
?>
</div>
</div>

<div class="rechts">
<div class="box leistungen">
<p class="hbox">unsere Leistungen</p>
<p><a data-rel="menukarte" title="4-Gänge Menü zum Dinner" href="javascript:void(0);">4-Gänge Menü zum Dinner</a></p>
<p>Musicaldarbietungen aus den verschiedensten Musicals</p>

<p class="hbox leistungenAbstand">Leistungen auf Wunsch</p>
<p>Bustransfer</p>
<p>Übernachtung <span class="klein">(z.B. Pentahotel Leipzig ab 48,00&nbsp;€ p. Pers. im DZ inkl. Frühstück)</span></p>
<p><a title="Eintrittskartenrücktrittsversicherung" href="../start/eintrittskartenrueckversicherung.pdf" target="_blank">Eintrittskartenrücktrittsversicherung</a></p>
</div>

<div class="content_menukarte content_popup">
<h2>Menü zur Musical Dinner Show Leipzig</h2>
Baby-Spinat-Salat mit gerösteten Mandeln,<br />
karamellisierten Orangen und geräucherter Ente<br />
***<br />
Kartoffel-Lauchsuppe mit knusprigen Zwiebeln,<br />
Crème Fraîche und Kräutern<br />
***<br />
Entenkeule mit Rotkohl und Klössen<br />
***<br />
Warmes Birnentarte mit Vanillesoße und Beeren der Saison<br />
</div>

<?PHP
include('../inc/pentahotel.html');
?>

<div class="box">
<p class="hbox">Termine, Ort &amp; Preis</p>
<div class="sp1">
Termine:
</div>
<div class="sp2 b10 termin">
<?PHP echo $detail['termin']; ?> // hier werden die aktuellen Termine geschrieben und angeklickt. Die
Funktion $detail steht in det codierten Datei

</div>
<div class="sp1 ort">
Ort:
<br />
<a data-rel="location" class="info" title="Info" href="javascript:void(0);"></a>
</div>
<div class="sp2 b10">
<a data-rel="location" title="Pentahotel Leipzig" href="javascript:void(0);">Pentahotel Leipzig</a><br />
Grosser Brockhaus&nbsp;3<br />
04103 Leipzig
</div>
<div class="sp1">
Einlass:
</div>
<div class="sp2">
19:00 Uhr
</div>
<div class="sp1">
Beginn:
</div>
<div class="sp2">
19:30 Uhr
</div>
<div class="sp1">
Ende:
</div>
<div class="sp2 b10">
23:15 Uhr
</div>
<div class="sp1 preis">
Preis:
</div>
<div class="sp2 preis">
<?PHP echo $detail['preis']['event']['formatiert']; ?> // hier wird der einzigste Preis geschrieben.
Die Funktion $detail steht in det codierten Datei.
</div>
</div>

<?PHP
echo $detail['lnk_andere'][bereich];
?>

</div>

</div>
<?PHP
include('../inc/footer.html');
?>
</div>
</div>
</div>
<?PHP
echo $detail['bildwechsel'];
?>
</body>
</html>

Der Code für das Bestellformular für die Ticketbestellung passt hier nicht rein. Er befindet sich im Anhang der Datei ticket.txt. Wenn das Wunschdatum im Veranstaltungformular angeklickt wird, öffnet sich diesen. Und genau das angeklickte Datum benötige ich für weitere Operationen.
 

Anhänge

  • ticket.txt
    9 KB · Aufrufe: 0
Werbung:
Desperado45 tu uns doch bitte einen Gefallen und nutz die [CODE ] [ /CODE]-Tags um Quellcode in deinen Postings zu formatieren. Dadurch lässt sich der Quellcode für uns auch besser hier lesen!

Für PHP-Code: [PHP ] [ /PHP]
Für HTML-Code: [HTML ] [ /HTML]
Für sonstigen Code: [CODE ] [ /CODE]

Natürlich ohne die Leerzeichen innerhalb der eckigen Klammen!
 
Ich bin der Meinung, dieses Problem lässt sich so nicht vernünftig lösen. Zumindest nicht mit PHP, solange die Preise je Event nicht sofort klar sind. Da das Formular ja nur per JavaScript eingeblendet wird, muss der Preis auch mit JavaScript angepasst werden. Allerdings halte ich das für falsch, zumindest solange da "Termine, Ort & Preis" steht und ich den Preis erst sehe, wenn ich auf "Karten klicke.
Und deshalb bleibe ich bei meiner Meinung, dass der Aufbau schon falsch ist und an den grundlegenden Dingen gedreht werden muss, sprich nicht die Symptome behandeln, sondern die Ursache.
 
Hallo, dann ruf doch bitte das Formular auf meiner Webseite auf. Da kannst Du sehen wie das funktioniert. Der Preis steht im Formular. Die zusätzlichen Preise blende ich erst ein (Samstags gibt es einen anderen Preis), wenn ich das Problem mit dem Buchungsformular gelöst habe.
 
Werbung:
Das ist aber doch falsch!!!!

Wenn ich auf die Seite komme, steht da ein Preis von 74 Euro. Wenn ich jetzt ein Samstags-Event anklicke, soll dann plötzlich ein anderer Preis im Formular stehen. Da fühle ich mich als Kunde doch schon verarscht. Der Preis muss sofort ersichtlich sein, und nicht erst, wenn ich Karten bestellen will.
 
Stimmt schon. Da soll ja ein Preis von 69 € hin. Kann ich aber erst machen, wenn ich das Problem gelöst habe. Die 69 € schreib ich dann per normalen html unter die 74 EUR. Gebucht wird sowieso erst so ab April.
 
Für mich gibt es da nur eine "halbwegs" brauchbare Lösung, und zwar, man bohrt die JavaScript-Funktion ticket auf und ändert diese Links, in dem man auch noch den Preis übergibt:
Code:
href="javascript:ticket('t-20151204','Fr, 04.12.2015');">
href="javascript:ticket('t-20151212','Sa, 12.12.2015');">
href="javascript:ticket('t-20151217','Do, 17.12.2015');">
href="javascript:ticket('t-20160220','Sa, 20.02.2016');">
Aber das scheitert wieder daran, dass der Preis beim Laden der Seite nicht bekannt ist.
 
Werbung:
Das ist die Funktion dazu, vermute ich mal:
(Wie mach ich das mit den [CODE ] [ /CODE]-Tags?)

function ticket(id,datum) {
$('.rechts').find('.lock').removeClass('lock');
// zu
if($('#ticketformular_wrapper').is(':visible') && (!id || (id && id == ticket.id))) {
$('#ticketformular_wrapper').slideUp();
$('#links_content').slideDown();
return;
}
ticket.id = id;
// auf
if(id) {
$('#'+id).addClass('lock');
$('#datum').val(datum);
$('.datum_txt').html(datum);
$('.termin_ok').show();
$('.termin_wahl').hide();
} else {
$('.termin_ok').hide();
$('.termin_wahl').show();
}
$('#links_content').slideUp();
$('#ticketformular_wrapper').slideDown(400,function() {
$('#content').scrollTo(250);
if(!$.browser.mobile) {
$('#menge').focus();
}
});
}
 
(Wie mach ich das mit den [CODE ] [ /CODE]-Tags?)
Tippen oder den Button "Einfügen" klicken.

Nochmal: solange du den Preis nicht schon per PHP hast, gibt es keine vernünftige Lösung. Da du aber nur einen Preis in $details stehen ist, funktioniert das alles nicht. Da kannst du dich auf den Kopf stellen und mit dem Hintern Fliegen fangen, wenn die Ursache nicht repariert wird, ist Ende im Gelände. Und dummerweise steckt der zu ändernde Quellcode in der verschlüsselten Datei.
 
Werbung:
Passiert doch. Der Preis wird per JS dem value-Attribut im Formular zugewiesen und liegt beim Versenden in $_POST.
Eben, beim Versenden. Der Preis muss aber schon bei der Anzeige des Formulars vorhanden sein. Und da existiert der doch noch nicht.
Wenn man auf "Karten bestellen" klickt, wird das Formular angezeigt, klicke ich jetzt auf ein Event am Freitag und dann auf Samstag muss sich der Preis ändern. Aber woher den preis nehmen, wenn er nicht bekannt ist. Das Datum wird ja auch angepasst.

<edit>
In dem Formular sehe ich noch nicht mal ein Feld für den Preis
</edit>
 
Zuletzt bearbeitet von einem Moderator:
Der Preis ist doch bekannt.
Wenn der 18.12.2015 angeklickt wird, gebe ich im Buchungsformular den Preis 74 € mittels html aus.
Wenn der 19.12.2015 angeklickt wird, gebe ich im Buchungsformular den Preis 69 € mittels html aus.
Dazu brauch ich aber das Buchungsdatum als Vergleich bzw. Bezugsgröße.
 
Also, entweder drücke ich mich nicht richtig aus, oder du verstehst mich nicht.

Wenn ich auf die Seite komme, steht da aktuell 74 €, das stimmt schon mal nicht. Wenn ich dann auf "Karten" klicke, dann wird im Formular das Datum richtig angezeigt, aber der Preis u.U. falsch. Um den Preis richtig anzuzeigen, müsste dieser per JavaScript korrigiert werden. Das geht nur sinnvoll, wenn der Preis schon per PHP geliefert wird. Ansonsten bist du gezwungen, in der JavaScript-Funktion ticket das Datum zu prüfen und dann den Preis je Datum zuweisen. Das ist
  1. viel zu umständlich
  2. fehleranfählig
  3. und wird dir das immer wieder Probleme machen
Das lässt sich nur verhindern, wenn der richtige Preis je Datum schon in PHP bekannt ist, alles andere ist Blödsinn.

Das ist ungefähr so, als wenn bei deinem Auto das Schiebedach undicht ist und du dir einen Eimer zum Auffangen des Wassers ins Auto stellst. Macht doch auch keiner, das Abdichten des Daches dürfte da wohl die bessere Lösung sein.
 
Werbung:
Zurück
Oben