| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

27-06-2011, 08:38
|
|
ViperDuck
Registrierter Benutzer
|
|
Registriert seit: Jun 2011
Beiträge: 4
|
|
Navigation mit _POST anstatt _GET
Hallo zusammen,
ich bin gerade am lernen mit dem PHP-Sprache umzugehen und habe eine Navigation erstelt.
Die Navi wird mit _GET angesprochen so das jede Seite in gleiches DIV-Kontainer includet wird und es funktioniert alles einwandfrei.
Aber ich finde es hässlich wenn im url die ganze Beschreibung zu der Seite aufgelistet ist.
z.Bsp. www.homepage.com/seite/seite.php?kontainer=seite.php
Meine Frage ist, wie kann ich das mit _POST ändern bzw. ansprechen, damit die seite so bleibt wie jetzt ist?
Ich möchte einfach dass alles mit dem "?kontainer=seite.php" nicht zu sehen ist!!!
Code:
PHP-Code:
<?php session_start();
error_reporting(E_ALL); ini_set('display_errors', 1);
$sprachen = array ( 'de', 'en', 'hr' ); if(isset($_GET['lang']) && in_array($_GET['lang'], $sprachen) ) { $_SESSION['language'] = $_GET['lang']; } else { if (!isset($_SESSION['language'])) { //default ist immer deutsch $_SESSION['language'] = 'de'; } } //aus dem includeverzeichniss die sprachdatei auslesen include("lang/".$_SESSION['language'].".inc.php");
echo "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'> <html xmlns='http://www.w3.org/1999/xhtml'> <head> <meta http-equiv='content-Type' content='text/html; charset=utf-8' /> <title>".$lang['will']."</title> <meta name='keywords' content='Website, Template, Webdesign, Webseiten, Vorlagen, Webstranice, Predlosci, Webdizajn' /> <meta name='description' content='' /> <meta name='author' content='www.seite.com' /> <link rel='stylesheet' href='CSS/dizajn.css' type='text/css' charset='utf-8' /> </head>"; echo "<body class='body'>"; // -------------- HAUPT KONTAINER ------------ echo "<div class='glavnaDiv'>"; echo "<div class='sirokoStaklo'></div>"; //------------ NAVI -------------- echo "<div class='o_menu' id='navi'>"; include('include/menu.inc.php'); echo "<div class='langDiv' id='language' float='left'>"; echo "<a href='index.php?lang=de'> <img src='./slike/de.png?lang=de' width='38' height='38' border='0' title='Deutsch' alt='Deutsch' /> </a> <a href='index.php?lang=hr'> <img src='./slike/hr.png?lang=hr' width='38' height='38' border='0' title='Hrvatski' alt='Hrvatski' /> </a>"; echo "</div>"; echo "</div>"; // ----------- MITTE --------------- echo "<div class='sredina1' id='sredina1'></div>"; echo "<div class='sredina2' id='content_middle'>"; echo "<div class='sredinaDiv' id='content_middle'>"; if(isset($_GET['content_middle'])) { switch ($_GET['content_middle']) { case "Startseite"; { include("include/".$_SESSION['language']."_start.inc.php"); break; } case "Vorlage"; { include("include/".$_SESSION['language']."_vorlage.inc.php"); break; } case "Kontakt"; { include("include/kontakt.inc.php"); break; } case "Impressum"; { include("include/".$_SESSION['language']."_impressum.inc.php"); break; } } } else { include('include/'.$_SESSION['language'].'_start.inc.php'); } echo "<br /></div>"; echo "</div>"; echo "<div class='sredina3' id='sredina3'></div>"; // ----------- FUSS BEREICH --------------- echo "<div class='podnozje'></div>"; echo "</div>"; echo "</body>"; echo "</html>"; ?>
Vielen Dank.
Grüsse
ViperDuck
|

27-06-2011, 09:57
|
|
Quetschi
PHP Expert
|
|
Registriert seit: Dec 2004
Beiträge: 2.759
|
|
Ganz klassisch halt mit einem Formular und dazu Buttons mit den ensprechenden mit dem Namen "kontainer" und entsprechende values.
Allerdings find ich die Vorgehensweise für einen ziemlichen "Würgaround" - wenn es dir um "schönere" Urls geht, dann guck dir lieber mod_rewrite an - einfach mal google zu dem Begriff befragen.
__________________
Drelingdo
Krabonse
Simmannamando
|

27-06-2011, 10:00
|
|
h3ll
Registrierter Benutzer
|
|
Registriert seit: Mar 2008
Beiträge: 2.328
|
|
GET sollte zum Abfragen von Daten verwendet werden. POST zum Senden von Daten. Was hat POST mit einer Navigation zu tun? Normalerweise gehts ja bei einer Navigation darum Seiten abzufragen und nicht zu senden.
|

27-06-2011, 11:22
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Ganz dumme Idee, sorry.
POST ist für Requests gedacht, die Daten verändern; GET für Requests, die Daten anzeigen.
Zitat:
Zitat von ViperDuck
Ich möchte einfach dass alles mit dem "?kontainer=seite.php" nicht zu sehen ist!!!
|
Und warum ...?
Jede vernünftige Webseite funktioniert so - damit kann man einzelne Seiten gezielt ansteuern, auch von extern, kann sie bookmarken, etc.
Dein Vorhaben würde die Nachteile, die Frames für den Benutzer haben, auf anderem Wege nachbasteln.
Und dass dann irgendeine Suchmaschine deine Inhalte indiziert, davon wirst du dich auch komplett verabschieden dürfen - die mache keine POST-Requests.
Alles in allem ist die Idee hirnrissig, und deshalb kann der einzig vernünftige Ratschlag nur lauten: Lass' den Mist.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

27-06-2011, 19:07
|
|
ViperDuck
Registrierter Benutzer
|
|
Registriert seit: Jun 2011
Beiträge: 4
|
|
Hallo und Hezlichen Dank an alle.
@wahsaga: es ist wegen sicherheit, so kann jeder die Seite hacken und deswegen möchte ich nicht dass jeder sieht wie meine scripts funktionieren!!!!
Also ihr meint ich soll dass so lassen?
Gruss
ViperDuck
|

27-06-2011, 19:24
|
|
combie
PHP Expert
|
|
Registriert seit: May 2006
Beiträge: 2.925
|
|
Zitat:
|
es ist wegen sicherheit, so kann jeder die Seite hacken
|
Sicherheit?
Hacken?
Nöö....
Wie denn?
|

27-06-2011, 20:52
|
wahsaga
 Moderator
|
|
Registriert seit: Sep 2001
Beiträge: 24.486
|
|
Zitat:
Zitat von ViperDuck
es ist wegen sicherheit, so kann jeder die Seite hacken und deswegen möchte ich nicht dass jeder sieht wie meine scripts funktionieren!!!!
|
Dann repariere deine vermurksten Scripte.
Von GET auf POST umzustellen, „hilft“ in Punkto Sicherheit selbstverständlich kein bisschen,
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
|

29-06-2011, 11:02
|
|
ViperDuck
Registrierter Benutzer
|
|
Registriert seit: Jun 2011
Beiträge: 4
|
|
Okay, werde ich so lassen.
Herzlichen Dank an alle.
Gruss
Viper Duck
|

01-07-2011, 15:48
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Wenn deine Scripte so gefährdet sind, solltest du das auf keinen Fall so lassen.
|

02-07-2011, 10:19
|
|
ViperDuck
Registrierter Benutzer
|
|
Registriert seit: Jun 2011
Beiträge: 4
|
|
Ich habe allgemein gedacht, den ich kenn die PHP-Sprache noch nicht so gut und deswegen, will ich nicht das irgend ein Hacker, solche Schwäche bei den Scripts ausnutzt!!!!
Danke und Gruss
ViperDuck
|

02-07-2011, 13:18
|
|
combie
PHP Expert
|
|
Registriert seit: May 2006
Beiträge: 2.925
|
|
Zitat:
|
will ich nicht das irgend ein Hacker, solche Schwäche bei den Scripts ausnutzt
|
Was meinst du mit "Solche Schwächen"?
Und was soll an Post sicher sein als an Get?
|

02-07-2011, 13:58
|
|
mainclain
Registrierter Benutzer
|
|
Registriert seit: Dec 2006
Beiträge: 57
|
|
Zitat:
Zitat von ViperDuck
Ich habe allgemein gedacht, den ich kenn die PHP-Sprache noch nicht so gut und deswegen, will ich nicht das irgend ein Hacker, solche Schwäche bei den Scripts ausnutzt!!!!
Danke und Gruss
ViperDuck
|
Nur um das noch einmal klar zu machen, POST und GET sind beide veränderbar. Zwar ist es für anfänger leichter oben abzulesen, was gesendet wird, aber jemand der sich auch nur ein wenig damit auseinandersetzt, kann die Requests die der Browser sendet (Darunter fällt natürlich auch POST) so oder so lesen und verändern.
Sicherheit bringt dir das ganze also auch nicht wirklich.
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|