php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2010

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 01.08.2010, 10:53  
Neuer Benutzer
 
Registriert seit: 22.07.2010
Beiträge: 14
PHP-Kenntnisse:
Anfänger
geckodog ist zur Zeit noch ein unbeschriebenes Blatt
Standard [Erledigt] Mit if und chase verschiedene Seiten öffnen

Hallo lieber Helfer und Helferinnen,

ich habe folgendes Problem, bei dem ich für jede Hilfe dankbar wäre:
Ich habe 2 Seiten. Auf der ersten HTML-Seite sind 5 verschiedene Bilder, die durch anklicken einen Wert per POST an eine check.php-Datei senden.
Die check.php bekommt dann quasi 5 POST-Variablen. Diese wollte ich per if- und switsch Anweisung überprüfen und je nachdem,welches Bild angeklickt wurde einer Variablen einen Wert zuweisen und eine spezifische Seite öffnen.

Hier der Code für die check.php:

PHP-Code:
<?php
session_start
();
if(isset(
$_POST["einfach"]))
{
$format=einfach;}
elseif(isset(
$_POST["zweifach"]))
{
$format=zweifach;}
elseif(isset(
$_POST["dreifach"]))
{
$format=dreirahmen;}
elseif(isset(
$_POST["vierfach"]))
{
$format=vierfach;}
elseif(isset(
$_POST["zweirahmen"]))
{
$format=zweirahmen;}
elseif(isset(
$_POST["dreirahmen"]))
{
$format=dreirahmen;}

$_SESSION['formatend']=$format;

switch(
$format)
{
case (
"einfach");
header("Location: http://localhost/Farbauswahl.php");
break;

case (
"zweifach");
header("Location: http://localhost/Farbenmeer.php");
break;

case(
"dreifach");
header("Location: http://localhost/Farbenmeer3.php");
break;

case(
"vierfach");
header("Location: http://localhost/Farbenmeer6.php");
break;

case(
"zweirahmen");
header("Location: http://localhost/Farbauswahlrahmen.php");
break;

case(
"dreirahmen");
header("Location: http://localhost/Farbauswahlrahmen.php");
break;
}
?>
Leider funktioniert das mit der automatischen Weiterleitung auf die jeweilige Seite per HEADER-Befehl rein gar nicht. Habe auch probiert, statt
header("Link"), echo'<meta....> zu nutzen, aber in dem Falle öffnet er mir, in jedem Fall, egal,welches Bild auf der vorherigen Seite angeklickt wurde, immer die letzte Weiterleitung. Ich würde mich über jeden Tipp und auch gerne Codeverbesserungen sehr freuen!

Beste Grüße
geckodog ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 01.08.2010, 10:58  
Erfahrener Benutzer
 
Registriert seit: 05.02.2009
Beiträge: 1.401
PHP-Kenntnisse:
Fortgeschritten
Destruction ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
case 'dreifach': ... 
__________________
"Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]
Destruction ist offline  
Alt 01.08.2010, 10:59  
Benutzer
 
Registriert seit: 24.07.2010
Beiträge: 91
PHP-Kenntnisse:
Fortgeschritten
aeris befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
$format=dreirahmen 
"dreierrahmen" ist ein String und gehört demnach in Anführungszeichen.

Richtig ist also z.B.:
PHP-Code:
$format "dreierrahmen"
Übrigens würde ich den Aufbau des Formulars überdenken.
Besser wäre es, durch Klick auf ein Bild z.b. $_POST['format'] zu senden wobei dieser Parameter schon den richtigen Wert enthalten könnte.
aeris ist offline  
Alt 01.08.2010, 11:03  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.873
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

insofern das script nichts anders tut als das da oben benutz nur nen switch und weiß der session-variable in der einzelnen case ihren wert zu..
Desweiteren
PHP-Code:
 $format dreirahmen
weißt $format den wert der Konstante dreirahmen zu, ich glaub nich das es das ist was du willst.
PHP-Code:
<?php

session_start
();
switch ( 
$_POST ) {
   case 
"einfach":
    
$_SESSION['formatend'] = "einfach";
    
header("Location: /Farbenauswahl.php");
    break;
   
// der rest der cases
  
default:
    
// instruct what happens if someone plays with your POST-Script
    
die("Hör auf zu fummeln !!");
}

?>
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist offline  
Alt 01.08.2010, 11:39  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

Zitat:
Zitat von tr0y Beitrag anzeigen
PHP-Code:
switch ( $_POST ) {
   case 
"einfach"



Mach doch mal ein var_dump($_POST); an den Anfang, es kann gut sein dass du in deinem Formular einen Fehler hast.
fab ist offline  
Alt 01.08.2010, 12:06  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.873
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

Zitat:
Zitat von fab Beitrag anzeigen



Mach doch mal ein var_dump($_POST); an den Anfang, es kann gut sein dass du in deinem Formular einen Fehler hast.
ich seh schon ich bin noch nicht ganz wach oO

PHP-Code:
<?php

session_start
();
foreach (
$_POST as $key => $value)
 if ( !empty(
$value) ) {
  switch ( 
$key ) {
   case 
"einfach":
    
$_SESSION['formatend'] = "einfach";
    
header("Location: /Farbenauswahl.php");
    break;
   
// der rest der cases
   
default:
    
// instruct what happens if someone plays with your POST-Script
    
die("Hör auf zu fummeln !!");
  }
 }
}
?>
natürlich gesetz dem fall das dein formular nur eins setzt.
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist offline  
Alt 01.08.2010, 17:17  
Neuer Benutzer
 
Registriert seit: 22.07.2010
Beiträge: 14
PHP-Kenntnisse:
Anfänger
geckodog ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hey, danke erst einmal für eure Mühe!!
Habe nun folgendes probiert,aber es erfolgt keine Weiterleitung auf die gewünschten Seiten:
PHP-Code:
<?php

session_start
();
switch ( 
$_POST 
{
   case 
"einfach":
    
$_SESSION['formatend'] = "einfach";
    
header("Location: /Farbauswahl.php");
    break;
   case 
"zweifach":
    
$_SESSION['formatend'] = "einfach";
    
header("Location: /Farbenmeer.php");
    break;
   case 
"dreifach":
    
$_SESSION['formatend'] = "einfach";
    
header("Location: /Farbenmeer3.php");
    break;
   case 
"vierfach":
    
$_SESSION['formatend'] = "einfach";
    
header("Location: /Farbenmeer6.php");
    break; 
   case 
"zweirahmen":
    
$_SESSION['formatend'] = "einfach";
    
header("Location: /Farbauswahlrahmen.php");
    break;
   case 
"dreirahmen":
    
$_SESSION['formatend'] = "einfach";
    
header("Location: /Farbauswahlrahmen.php");
    break; 
}
?>
Hier auch noch der vorhergehende HTML-Skript:
PHP-Code:
<form action="formatcheck.php" method="post">
<
input height="162" name="dreirahmen" type="image" width="258" src="Grafik2%203teiler%203d.jpg" /></form>
</
div>
<
form action="formatcheck.php" method="post">
<
input height="162" name="vierfach" type="image" width="174" src="4seitig%203d.jpg" /></form>
</
div>
<
div id="Ebene22" style="position: absolute; left: 574px; top: 355px; width: 257px; height: 162px; z-index: 12" class="style53">
<
form action="formatcheck.php" method="post">
<
input height="162" name="dreifach" type="image" width="257" src="3seitig%203d.jpg" /></form>
</
div>
<
div id="Ebene21" style="position: absolute; left: 355px; top: 355px; width: 189px; height: 162px; z-index: 12" class="style53">
<
form action="formatcheck.php" method="post">
<
input height="162" name="zweifach" type="image" width="189" src="2seitig%203d.jpg" /></form>
</
div>
<
div id="Ebene20" style="position: absolute; left: 148px; top: 594px; width: 200px; height: 162px; z-index: 12" class="style53">
<
form action="formatcheck.php" method="post">
<
input height="162" name="zweirahmen" src="Grafik1%202teiler%203d.jpg" type="image" width="200" /></form>
</
div>
<
div id="Ebene19" style="position: absolute; left: 149px; top: 355px; width: 178px; height: 160px; z-index: 12" class="style53">
<
form action="formatcheck.php" method="post">
<
input height="160" name="einfach" type="image" width="178" src="1seitig%203d.jpg" /></form
Ich geh kaputt......

Geändert von geckodog (01.08.2010 um 17:22 Uhr).
geckodog ist offline  
Alt 01.08.2010, 17:24  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.990
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
switch ( $_POST )
Das ist auch Unsinn. $_POST enthält die Werte mehrerer Parameter und ist in jedem Fall ein Array.

Zitat:
Mach doch mal ein var_dump($_POST); an den Anfang
hätte Dir das auch gezeigt. Im Zweifel einfach auch mal Tipps umsetzen.

Im Übrigen solltest Du auf Deinen Ausdruck achten

Zitat:
if und chase
if- und switsch Anweisung
Skript
macht echt nen stümperhaften Eindruck.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 01.08.2010, 21:35  
Neuer Benutzer
 
Registriert seit: 22.07.2010
Beiträge: 14
PHP-Kenntnisse:
Anfänger
geckodog ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hmmm...ich krieg das nicht hin...sh*t
geckodog ist offline  
Alt 02.08.2010, 01:00  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.873
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

ich hatte das da auch korrigiert :P *never kritzel at forum if you are not wach* düdelü
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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 are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Was braucht ein gutes CMS Lollix Off-Topic Diskussionen 33 03.03.2010 17:51
Dynamische Seiten & nicht existierende Seiten monk HTML, Usability und Barrierefreiheit 3 07.02.2010 19:40
Kirchenwebsite - Wie Header & Footer includieren Stretch30 PHP Tipps 2009 11 13.06.2009 14:05
11000: Wichtige Seiten, zum Fest im 1010er-Pack günstiger! Nikolaus 2.0 Adventskalender 2008 9 29.12.2008 14:48
[Erledigt] Login script: Jeder User sieht andere Seiten Cr3at3 PHP Tipps 2008 61 29.08.2008 08:23
seite öffnen Mike123 PHP Tipps 2006 5 29.07.2006 09:49
Seiten sichern!? c01001 PHP Tipps 2006 7 20.01.2006 09:13
Kann PHP Dateien nicht öffnen Wöllchen PHP Tipps 2006 8 19.01.2006 17:50
[Erledigt] Zuviele Seiten werden angezeigt PHP Tipps 2007 5 24.12.2005 12:49
Mailanhänge nicht zu öffnen?! PHP Tipps 2005-2 1 28.10.2005 00:07
Word Datei öffnen + neue Seite PHP Tipps 2005-2 1 20.10.2005 12:27
link-Seite in eigenem frame öffnen? HTML, Usability und Barrierefreiheit 9 15.09.2005 12:08
php seiten in einen iframe includen => HILFE PHP Tipps 2005-2 10 12.07.2005 19:24
Php dateien öffnen PHP Tipps 2005-2 19 12.06.2005 18:53
wml oder php/html Seiten automatisch erkennen Soese PHP Tipps 2005 4 13.01.2005 22:57

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php seite öffnen, php seite aufrufen, seite aufrufen php, mit php seite aufrufen, php seite aufrufen code, html verschiedene bilder beim öffnen if, php website aufrufen, php case seite öffnen, php internetseite öffnen, php webseite aufrufen, php seite aufrufen mit if, aus html seite php seiten aufrufen, php php-seite starten, php site öffnen, php code verschiedene seiten öffnen, seiten öffnen helfer, webseite per php öffnen, php website öffnen, verschieden seiten in eine bringen php, php seite aus php seite aufrufen

Alle Zeitangaben in WEZ +2. Es ist jetzt 21:09 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum