If-Anweisungen mit Array

  • Themenstarter Themenstarter DEDEX7200Pro
  • Beginndatum Beginndatum
Die Funktion ist stristr(). Schalg mal auf der PHP-Seite nach was die macht.

Und du darfst nie mit = vergleichen. Mindestens mit ==
Ansosnten machst du nur eine Zuweisung.
Aber auch das habe ich dir schon mal geschrieben und du scheinst es ebenfalls gekonnt überlesen zu haben.
 
ah danke, jetzt verstehe ichs. Sobald z.B. s vorkommt wird alles danach angezeigt. Geht das auch, sobald etwas verwendet wird, das alles davor angezeigt wird? Ich schaus mir mal genauer an. Danke

Edit:
PHP:
<?php
$currentbrowser = "Internet Explorer";

if(stristr($currentbrowser, "Firefox")  == TRUE) {
$browser = "Firefox";
}

else {
$browser = $currentbrowser;
}
$array = array();
$array[1] = "Firefox";
$array[2] = "Internet Explorer";
$array[3] = "Test";

//gibt bei Erfolg den Schlüssel zurück, andernfalls FALSE
$zahl = array_search($browser, $array);
if ($zahl != False){
$verwendet = array();
    $verwendet[1] = "Firefox";
    $verwendet[2] = "Internet Explorer";
    $verwendet[3] = "Test";
    echo "Sie verwenden derzeit den " .$verwendet[$zahl];
}

else {
    echo "Ihr Browser konnte leider nicht erkannt werden";
}
?>

So sieht es derzeit bei mir aus. Ich schaus mir nochmal an, um es zu verbessern. z.B. möchte ich auch hier wieder, dass folgendes so aussehen könnte:

PHP:
if(stristr($currentbrowser, $array)  == TRUE) {
$browser = $array;
}
 
Zuletzt bearbeitet von einem Moderator:
Hallo Leute, ich habe daraus mal diesen schönen Script, nur so als Fun gemacht:

.htaccess-Datei:
Code:
Redirect /error/404.php /index.php
Redirect /error/error.php /index.php
ErrorDocument 404 /error/error.php?error=404

und dann im Ordner Error habe ich folgende Dateien:
error.php
PHP:
<?php
$_GET['error'];
$error = $_GET['error'];
$pfad = "http://".$_SERVER['HTTP_HOST'];;

$meldungen = array();
$meldungen[1] = "404";

$zahl = array_search($error, $meldungen);
if ($zahl){
    include ("$meldungen[$zahl].php");
}

else {
header("Location: $pfad");
}
?>

und dann die 404.php:
PHP:
<?php
echo "Diese Webseite wurde leider nicht gefunden";
?>

(Also ich hab auch mehrere Fehlermeldungen; deshalb den Array^^ Des wäre nur ziemlich lang, ....)

Der Script ermöglicht es, dass Besucher beim direkten Aufruf der 404.php oder der Error.php auf die Startseite geleitet werden und nur wenn Sie eine nichtvorhandene Seite aufrufen die Error-Seite angezeigt bekommen. Dies kann man ja beliebig noch überarbeiten oder bei anderen Sachen anwenden^^
 
Zuletzt bearbeitet von einem Moderator:
Ich bin jetzt soweit, dass ich des gerne so anwenden würde. Weiss aber nicht, wie ich auf §arrzahl komme^^ Also $array[0] und $verwendet[0]; oder [1], ....

PHP:
<?php
$currentbrowser = "Internet Explorer2";

$array = array();
$array[1] = "Firefox";
$array[2] = "Internet Explorer";
$array[3] = "Test";

$verwendet = array();
$verwendet[1] = "Firefox";
$verwendet[2] = "Internet Explorer";
$verwendet[3] = "Test";

$arrzahl = ;
if(stristr($currentbrowser, $array[$arrzahl])  == TRUE) {
$browser = $verwendet[$arrzahl];
}

else {
$browser = $currentbrowser;
}

//gibt bei Erfolg den Schlüssel zurück, andernfalls FALSE
$zahl = array_search($browser, $array);
if ($zahl != False){
echo "Sie verwenden derzeit den " .$verwendet[$zahl];
}

else {
    echo "Ihr Browser konnte leider nicht erkannt werden";
}
?>
 
also ich habe nun den fertigen Script auf das Browser-Problem angefertigt. Falls es einer brauchen kann^^ Ich versuch des dann mal an meinen Script anzupassen (handelt sich nicht um nen Browser)^^ Ich denke mal, dass des so stimmen sollte.

PHP:
<?php
///getenv gibt es eigentlich so aus: Mozilla/5.0 (Windows; U; Windows NT 6.0; de; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3
$currentbrowser = getenv("HTTP_USER_AGENT");

$array = array();
$array[1] = "Firefox";
$array[2] = "Internet Explorer";
$array[3] = "Test";

$verwendet = array();
$verwendet[1] = "Firefox";
$verwendet[2] = "Internet Explorer";
$verwendet[3] = "Test";

foreach ($array as &$value) {
$arrzahl = array_search($value, $array);
if(stristr($currentbrowser, $array[$arrzahl])  == TRUE) {
$browser = $array[$arrzahl];
}
}

//gibt bei Erfolg den Schlüssel zurück, andernfalls FALSE
$zahl = array_search($browser, $array);
if ($zahl != False){
echo "Sie verwenden derzeit den " .$verwendet[$zahl];
}

else {
    echo "Ihr Browser konnte leider nicht erkannt werden";
}

///Ausgabe: Sie verwenden Firefox (wenn $currentbrowser FIrefox beinhält)
?>
 
Zuletzt bearbeitet von einem Moderator:
Zurück