php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.12.2008, 17:30  
Benutzer
 
Registriert seit: 26.10.2008
Beiträge: 45
ch.bielmeier befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] ==, !=, <, > für funktion als Wert übergeben?

Wie kann ich Vergleichsoperatoren als Wert an eine Funktion übergeben?
Er übergibt sie mir natürlich immer als String.
PHP-Code:
function dis($operator,$wert)
{
    if(
COUNT($_POST["auswahl"]) $operator $wert)
    {
        return 
"disabled";
    }

Aufruf:
<input type='submit' name='del' value='Löschen' ".dis(">", "0").">
oder:
<input type='submit' name='open' value='Öffnen' ".dis("!=", 1).">


Im ersten Beispiel soll die function prüfen ob die Anzahl imArray $_POST["auswahl"] > wie 0 ist.
Im 2. => Wenn kleiner odergrößer 1 dann den Submit-Button deaktivieren.
ch.bielmeier ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 07.12.2008, 17:33  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

das geht über eval(), ist aber nicht empfehlenswert
HPR1974 ist offline  
Alt 07.12.2008, 17:45  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
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

Für die Handvoll Operatoren würde ichs so machen:

PHP-Code:
function dis($operator,$wert)
{
$return "";
switch (
$operator)
  {
  case 
'<':
    if(
count ($_POST["auswahl"]) < $wert)
      {
      
$return "disabled";
      }
    break;

  case 
'==':
    if(
count ($_POST["auswahl"]) == $wert)
      {
      
$return "disabled";
      }
    break;

  
// etc.

  
default:
    break;
  }

return 
$return;

__________________
--
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 07.12.2008, 18:12  
Erfahrener Benutzer
 
Benutzerbild von Phoscur
 
Registriert seit: 01.12.2008
Beiträge: 450
PHP-Kenntnisse:
Fortgeschritten
Phoscur wird schon bald berühmt werdenPhoscur wird schon bald berühmt werden
Standard

Zitat:
Zitat von ch.bielmeier Beitrag anzeigen
[...]
Aufruf:
<input type='submit' name='del' value='Löschen' ".dis(">", "0").">
oder:
<input type='submit' name='open' value='Öffnen' ".dis("!=", 1).">


Im ersten Beispiel soll die function prüfen ob die Anzahl imArray $_POST["auswahl"] > wie 0 ist.
Im 2. => Wenn kleiner odergrößer 1 dann den Submit-Button deaktivieren.
Ich würde das aus einer ganz anderen Richtung angehen. Ich beschreibe dies nun und hoffe einfach mal, dass du nicht auf deinen (doch etwas unschönen) Ansatz beharrst.

PHP-Code:
$count count($_POST['auswahl']);
echo 
"<input type='submit' name='del' value='Löschen' "
      
. ($count 'disabled' '')
      . 
">"
PHP: Comparison Operators - Manual
Damit kannst du deine Bedingung einfach "vor Ort" schreiben
__________________
Phoscur ist offline  
Alt 07.12.2008, 18:57  
Benutzer
 
Registriert seit: 26.10.2008
Beiträge: 45
ch.bielmeier befindet sich auf einem aufstrebenden Ast
Standard

An alle vielen Dank
ch.bielmeier ist offline  
Alt 07.12.2008, 20:51  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Oder Du übergibst der Funktion eine weitere Funktion (in PHP bisher den Namen einer Funktion).
PHP-Code:
function greater($a$b) {
  return 
$a $b;
}

function 
dis($comparator$rvalue)
{
    if( 
$comparator(COUNT($_POST["auswahl"]), $rvalue) )
    {
        return 
"disabled";
    }
}

dis('greater'2); 
David 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
Array an Funktion übergeben Reen_Sc PHP Tipps 2008 1 05.09.2008 12:20
Funktionswert an andere Funktion übergeben Lightware PHP Tipps 2008 7 03.09.2008 13:46
JavaScript Funktion default Wert angeben? becks123 HTML, Usability und Barrierefreiheit 1 27.01.2006 11:06
[Erledigt] String mit Wörten an JS Funktion übergeben HTML, Usability und Barrierefreiheit 3 26.12.2005 18:30
Wert an Kombinationsfeld übergeben PHP Tipps 2007 1 11.11.2005 10:32
Menü mit Unterpunkten supertramp Beitragsarchiv 7 18.10.2005 22:40
Variable Werte einer Funktion übergeben bendigo PHP Tipps 2005-2 4 03.08.2005 17:33
Wert übergeben... Chrescht PHP Tipps 2005-2 8 01.07.2005 11:47
Formular daten an Funktion übergeben... wie??? PHP Tipps 2005-2 2 26.06.2005 04:46
variable in Funktion nutzen, ohne übergeben Unbekanntes_Pferd PHP Tipps 2005-2 1 22.06.2005 19:20
Wert einer Variable in einer anderen Funtion übernehmen seven-12 PHP Tipps 2005-2 7 14.06.2005 00:36
radiobutton wert mit formular übergeben kain PHP Tipps 2004-2 2 20.12.2004 14:59
[Erledigt] array an eine funktion übergeben PHP Tipps 2004 9 19.08.2004 19:28
[Erledigt] Parameter an eine funktion übergeben PHP Tipps 2004 9 18.08.2004 14:14
[Erledigt] Checkbox Wert übergeben Datenbanken 4 12.08.2004 11:02

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
&lt &gt, &gt; übergeben, poerator php übergeben, php operator übergeben, listenfeld-wert string übergeben

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:25 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