Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] Funktion will nicht so wie ich (https://www.delphipraxis.net/32408-%5Bphp%5D-funktion-will-nicht-so-wie-ich.html)

Meflin 22. Okt 2004 17:34


[PHP] Funktion will nicht so wie ich
 
Moin,
ich habe folgende funktion geschrieben:
Code:
$_APRON_general_security_mode = "fix"; // READ THE MANUAL BEFORE EDITING THIS!!!
function _APRON_censoring($_APRON_pattern) {
  if ($_APRON_general_security_mode == "fix") {
    for ($_APRON_x = 1; $_APRON_x <= strlen($_APRON_pattern); $_APRON_x++) {
     if ($_APRON_x > 1) {
       $_APRON_sub = $_APRON_sub."*";
     }
   }
   return ($_APRON_pattern[1].$_APRON_sub);
  }
  if ($_APRON_general_security_mode == "block") {
    return ("");
  }
}
echo _APRON_censoring("test");
und das kommt davor:
Code:
$_APRON_general_security_mode = "fix";
die funktion soll dabei aus test t*** machen. tut sie aber nicht, und ich kann keinen fehler finden :?

jfheins 22. Okt 2004 17:40

Re: [PHP] Funktion will nicht so wie ich
 
Ist zwar etwas unübersichtlich, aber ich glaube, ich weis woron es liegt.

Mach mal aus
Code:
if ($_APRON_general_security_mode == "fix") {
das hier:
Code:
if (TRUE) {
Und schreib, ob es dann geht ...
(Ich vermute stark, dass $_APRON_general_security_mode in der Funktion nicht bekannt ist ...)

Dax 22. Okt 2004 17:40

Re: [PHP] Funktion will nicht so wie ich
 
Hi Meflin, so geht es:
Code:
  define(_APRON_general_security_mode, "fix"); // READ THE MANUAL BEFORE EDITING THIS!!!

function _APRON_censoring($_APRON_pattern) {
  if (_APRON_general_security_mode == "fix") {
    for ($_APRON_x = 1; $_APRON_x <= strlen($_APRON_pattern); $_APRON_x++) {
     if ($_APRON_x > 1) {
       $_APRON_sub = $_APRON_sub."*";
     }
   }
   return ($_APRON_pattern[0].$_APRON_sub);
  }
  if (_APRON_general_security_mode == "block") {
    return ("");
  }
}

echo _APRON_censoring("test");

alcaeus 22. Okt 2004 17:42

Re: [PHP] Funktion will nicht so wie ich
 
Hi Meflin,

oder so:

Code:
$_APRON_general_security_mode = "fix"; // READ THE MANUAL BEFORE EDITING THIS!!! 
function _APRON_censoring($_APRON_pattern) {
global $_APRON_general_security_mode;
Greetz
alcaeus

jfheins 22. Okt 2004 17:44

Re: [PHP] Funktion will nicht so wie ich
 
Das meinte ich, nur ist mir das "global" nicht mehr eingefallen ...

Meflin 22. Okt 2004 17:47

Re: [PHP] Funktion will nicht so wie ich
 
geht bei mir auch nicht :shock:
und das auch nicht:
Code:
<?
function _APRON_censoring($_APRON_pattern, $_APRON_mode) { 
  if (_APRON_mode == "fix") { 
    for ($_APRON_x = 1; $_APRON_x <= strlen($_APRON_pattern); $_APRON_x++) { 
     if ($_APRON_x > 1) { 
       $_APRON_sub = $_APRON_sub."*";
     } 
   } 
   return ($_APRON_pattern[0].$_APRON_sub);
  } 
  if (_APRON_mode == "block") { 
    return ("");
  } 


echo _APRON_censoring("test","fix");
?>

Meflin 22. Okt 2004 17:48

Re: [PHP] Funktion will nicht so wie ich
 
ich bin dumm, letzteres geht, nur $ vergessen. aber warum kommt da kein fehler :gruebel:

jfheins 22. Okt 2004 17:49

Re: [PHP] Funktion will nicht so wie ich
 
wo ?

himitsu 22. Okt 2004 17:54

Re: [PHP] Funktion will nicht so wie ich
 
oder ganz einfach.

als 1. Zeile in der Funktion dieses einfügen:

Code:
global $_APRON_general_security_mode;

externe Variablen sind "normaler Weise" nicht innerhalb von Funktionen verfügbar.

Code:
function _APRON_censoring($_APRON_pattern) { 
  global $_APRON_general_security_mode;
  if ($_APRON_general_security_mode == "fix") {

[edit]
ach, da hab'sch ja jemanden übersehn, der das schon sagte -.-''


[edit2]
@jfheinz
Zitat:

Zitat von Meflin
Code:
  ...
    return ($_APRON_pattern[0].$_APRON_sub);
  }
  if ([color=red][b]$[/b][/color]_APRON_mode == "block") {
    return ("");
  }
}

Und ich weiß auch nicht, warum da keine Fehlermeldung kommt ... ist mir aber auch schon aufgefallen.

jfheins 22. Okt 2004 18:11

Re: [PHP] Funktion will nicht so wie ich
 
Das "wo?" war auf
Zitat:

aber warum kommt da kein fehler
bezogen.

Nochmal zu dem Code:
Code:
if (_APRON_mode == "fix") {
Ich vermute, das PHP das "_APRON_mode" als Konstante verwerten will, jedoch keine findet und somit einen String daraus macht, was zu
Code:
if ("_APRON_mode" == "fix") {
führt, was logischerweise immer Falsch ist ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:44 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz