PHP: mit if-Bedingung neue Seite öffnen

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Entweder:

header('Location: index.php');
exit();

(dabei musst du drauf achten dass vor dieser Stelle im Programmcode noch keine Textausgabe passiert sein darf)

oder:

echo('<meta http-equiv="refresh" content="0;url=index.php" />');

(das sollte aber am Ende dann im

Teil des generierten HTML-Quellcodes stehen)

habe das zweite genommen, funktioniert wie erwünscht!

Vielen Dank! (morgen gibts Stern)

0

Dir ist aber schon klar, daß DANN die Zielseite mitnichten "geschützt" ist?

Jeder, der schon mal vom Hörensagen (oder aus Logs oder weil jemand (wie z.B. Google) einen Link irgendwo gesetzt hat) was von der Zielseite mitgekriegt hat (oder auch blind auf Unterseiten testet - wie Hacker), kann sie aufrufen...

Vermeiden kannst Du das nur, wenn Du für JEDES zu schützende Dokument bei JEDEM Abruf den Anmeldestatus prüfst.

index.php ist IMMER die startseite, außer du regelst das in htaccess anderst, aber index.php sieht jeder und wenn du ein pw eingibst wirst du auf eine bestimmte seite weitergeletiet, ich nenne sie jetzt mal datei.php

header("Location: datei.php");

WICHTIG: in der datei.php muss auch ein sicherheitsmechanismus sein, den wenn jemand die seite so aufruft, kommt er auch drauf ;-) am besten machst du das so:

index.php

<?php
session_start();
if($_POST['passwort'] == "XYXYXY"){
$_SESSION['angemeldet'] = true;
header("Location: datei.php");
}else{
echo "formular";
}
?>

datei.php

<?php
session_start();
if($_SESSION['angemeldet']!=true){header('Location:alteDatei.php');}
?>
<html>
...
</html>

WICHTIG: header("Location: datei.php"); MUSS vor JEGLICHER Ausgabe stehen! Sobald irgend eine Ausgabe erfolgt ist, funktioniert header(); nicht mehr ;-)

Was ist der Unterschied zwischen if / else if und 2x if?

Hallo Community!

Was ich mich beim Programmieren jetzt schon eine Zeit lang frage ist: Was macht es eigentlich für einen Unterschied ob ich schreibe

if(...) {...} if(...) {...}

oder

if(...) {...} else if(...) {...} ?

Danke für alle Antworten! :) Und nein, das ist keine Hausaufgabenfrage! o.O

...zur Frage

[PHP] If-Abfrage mit Variable in Bedingung?

Hallo,

ich will mit PHP eine IF-Abfrage programmieren, die als Bedingung die Werte die in einer Variable ($example_users) stehen überprüft:

CODE [PHP]

    [...]   
    $example_users = '"user1" or "user2"';
    [...]
    if ( $zeile['username'] == $example_users ){
        echo "richtig";
    }else{
        echo "falsch";
    }
    [...]

Ausgabe mit $zeile['username'] = user1

falsch

Könnt Ihr mir hier weiterhelfen?

Danke

...zur Frage

Unterschied zwischen when und if?

Was ist der Unterschied zwischen when und if im Englischen?

...zur Frage

Wo ist der Fehler in meinem PHP post code?

Hey, ich habe heute angefangen mit php rum zuspielen und finde meinen Fehler einfach nicht, ich hoffe mir kann jemand weiter helfen :)


<?php

$notiz = "";

if($_POST['name'] != "" && $_POST['nickname'] != "" && $_POST['gbdatum'] != "") {          mail("info@domain.de", "Spieler-Buch Eintrag von: " . $_POST['nickname'], $_POST['nickname'] . " hat das Formular zum Eintrag in das Spieler-Buch ausgefüllt. \n\n Daten:\nName: " . $_POST['vorname'] . " " . $_POST['name'] . "\nSpielername: " . $_POST['nick'] . "\nGeboren am: " . $_POST['gbdatum']);       } else if($_POST['formular'] == 'set') {     $notiz = "Fülle bitte alle Felder aus."; } ?>

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <meta name="language" content="de" />
        
        <style>
        
        </style>
    </head>
    <body>
        
        <h2>Spielerbuch-Formular</h2>
        
        <form action="formular.php" method="post">
            <input type="hidden" value="set" name="formular">
			<input type="hidden" value="<?php echo $_SERVER['REMOTE_ADDR']; ?>" name="ip">
            
            <input type="text" placeholder="Vorname" value="<?php echo $_POST['vorname']; ?>" name="vorname"><br>
            <input type="text" placeholder="Nachname" value="<?php echo $_POST['name']; ?>" name="name"><br>
            <input type="text" placeholder="Spielername" value="<?php echo $_POST['nick']; ?>" name="nick"><br>
            <input type="date" value="<?php echo $_POST['gbdatum']; ?>" name="gbdatum"><br><br>
            
            <input type="submit" value="send">
            <br><br>
            <h4><font color="red"><?php echo $notiz; ?></font></h4>
       </form>
        
    </body>
</html>

Wenn ich im Formular alle vier Sachen ausfülle, dann wird mir die $notiz angezeigt und die Mail geht nicht raus.

<?php

mail("info@kryziz-gaming.de", "Betreff", "Testnachricht")

?>

Das funktioniert, ist aber auch stumpf.

...zur Frage

Kann man diesen Arduino-Sketch noch kürzen?

Mir fehlen genau 101 Bytes von den globalen Variablen... Kann man diesen Sketch eventuell kürzen? Ich hoffe ihr könnt mir helfen

#include <modbus.h>
#include <modbusDevice.h>
#include <modbusRegBank.h>
#include <modbusSlave.h>

modbusDevice led;
modbusSlave slave;

void setup() {
  led.setId(3); //Slave Adresse
  led.add(1); //Digital read&write
  led.add(2);
  led.add(3);
  led.add(4);
  led.add(5);
  led.add(6);
  pinMode(3, INPUT);
  pinMode(4, INPUT);
  pinMode(5, INPUT);
  pinMode(6, INPUT);
  pinMode(7, INPUT);
  pinMode(8, INPUT);
  
  slave._device = &led;  
  slave.setBaud(9600);
}

void loop() {
  if(digitalRead(3) == HIGH){
    led.set(1, 1);
  }
  if(digitalRead(4) == HIGH){
    led.set(2, 1);
  }
  if(digitalRead(5) == HIGH){
    led.set(3, 1);
  }
  if(digitalRead(6) == HIGH){
    led.set(4, 1);
  }
  if(digitalRead(7) == HIGH){
    led.set(5, 1);
  }
  if(digitalRead(8) == HIGH){
    led.set(6, 1);
  }
    if(digitalRead(3) != HIGH){
    led.set(1, 0);
  }
  if(digitalRead(4) != HIGH){
    led.set(2, 0);
  }
  if(digitalRead(5) != HIGH){
    led.set(3, 0);
  }
  if(digitalRead(6) != HIGH){
    led.set(4, 0);
  }
  if(digitalRead(7) != HIGH){
    led.set(5, 0);
  }
  if(digitalRead(8) != HIGH){
    led.set(6, 0);
  }
  slave.run();
}
...zur Frage

Was möchtest Du wissen?