php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 10.09.2004, 20:19  
Gast
 
Beiträge: n/a
Standard Problem mit function

Hallo,

ich hab da ne function zusammengebastelt, die aber irgendwie nicht will...
meiner meinung nach ist alles richtig, nur php meint da sei was falsch! Ich finde den fehler einfach nicht.

Es geht darum aus einer db eine zeile auszulesen und ggf eine variable auf 1 zu setzten, bzw 0.

Code:
function checkmprights($b)
{
	$a = $db_handler->sql_query("SELECT multiplayer FROM $mysql[pre]_mos_users WHERE user = '".$b."'");
	if($a[multiplayer] == "yes")
		{
			$showmp=1;
		}
	else
		{
			$showmp=0;
		}
}

Die abfrage im code lautet:

Code:
$check = checkmprights($user);
echo $check;
Die fehlermeldung ist:

Zitat:
Fatal error: Call to a member function on a non-object in /*****/functions.data.php on line 5



Bitte helft mir
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 10.09.2004, 20:41  
Erfahrener Benutzer
 
Registriert seit: 10.09.2004
Beiträge: 339
mkl0815
Standard Re: Problem mit function

hallo,

zwei sachen.

1. deine funktion hat keinen return-wert, liefert also nichts zurück.
Code:
   if($a[multiplayer] == "yes")
      {
         $showmp=1;
      }
   else
      {
         $showmp=0;
      }

  return $showmp;
}
das ist aber noch nicht der fehler.

die fehlermeldung besagt, das du versuchts auf die methode (funktion) eines objektes zuzugreifen, die es nicht gibt.
da kommt bei den code-schnipsel den du gepostet hast nur
Code:
$db_handler->sql_query(...
in frage.
das problem ist in diesem fall die sichtbarkeit von variablen innerhalb von funktionen. falls du an einer anderen stelle im script die variable $db_handler initialisiert hast, kannst du mittles "global $db_handler" diese innerhalb deiner funktion verfügbar machen.

also :

Code:
function checkmprights($b)
{
  global $db_handler;
   $a = $db_handler->sql_query("SELECT multiplayer FROM $mysql[pre]_mos_users WHERE user = '".$b."'");
   if($a[multiplayer] == "yes")
      {
         $showmp=1;
      }
   else
      {
         $showmp=0;
      }
 return $showmp;
}
allerdings ist das kein guter stil. besser ist es die sachen die in einer funktion verwendet werden als parameter zu übergeben oder innerhalb der funktion zu initialisieren.

mario.
__________________
Problems with Windows : REBOOT
Problems with Linux : BE ROOT
mkl0815 ist offline  
Alt 10.09.2004, 21:41  
Gast
 
Beiträge: n/a
Standard

Hallo!

vielen dank nun geht alles!

allerdings hab ich das global weggelassen, aber es funkt dennoch. liegt wohl daran, dass die klasse vorher schon definiert wurde, und eigentlich bei den anderen funktionen auch geht...


danke noch mal!

greets

ljungi
 
 


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
JS: Einführung - Javascript im Schichtenmodell nikosch Tutorials 4 11.04.2009 17:06
GD-Spezialisten gesucht....wer kann helfen? rezix PHP Tipps 2008 12 26.02.2008 17:55
Einfach Datepicker gesucht Cyberbob_at_tot PHP Tipps 2007 5 14.11.2005 09:10
Problem mit function PHP Tipps 2007 4 06.11.2005 22:19
problem mit function PHP Tipps 2005-2 6 19.10.2005 22:50
[Erledigt] Datenbank nicht erreichbar PHP Tipps 2005-2 27 19.08.2005 12:20
[Erledigt] Problem mit Backslash Patrick Schwarz PHP Tipps 2005-2 5 26.07.2005 09:54
Problem Call to a member function on a non-object PHP Tipps 2005 5 24.05.2005 19:14
Problem bei erstellung einer tabelle mit function und array PHP Tipps 2005 5 21.04.2005 20:54
[Erledigt] function problem PHP Tipps 2005 22 17.04.2005 21:32
problem fertiges script anzupassen kid01 HTML, Usability und Barrierefreiheit 8 22.03.2005 07:25
[Erledigt] OOP: function in eine andere function einbinden PHP Tipps 2005 10 20.03.2005 16:13
functionwiederholung in function PHP Tipps 2004 1 26.10.2004 15:09
Problem mit Konstruktor Stümper PHP Tipps 2004 11 23.08.2004 12:13
foreach problem mAy^daY PHP Tipps 2004 3 02.06.2004 20:29


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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.