SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Websites optimieren für Google & Co.

Websites optimieren für Google & Co. zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 05.07.2003, 12:21:31
OlliT OlliT ist offline
Anfänger
 
Registriert seit: Apr 2003
Beiträge: 118
Globale Variablen

Hallo,

ich habe ein Problem mit globalen variablen,

Beispiel:

PHP-Code:
function smiliesdb()
{
 global 
$trpc_parameters_smilies;
        
$trpc_name_s;
        
$trpc_value_s;
// Get smilies from db
if($trpc_result_smilies = @mysql_query("SELECT name, value FROM $TAB_parameters_smilies"))
{
 while (
$trpc_a_smilies mysql_fetch_array($trpc_result_smilies))
 {
  
$trpc_name_s $trpc_a_smilies["name"];
  
$trpc_value_s $trpc_a_smilies["value"];
  
$trpc_parameters_smilies[$trpc_name_s] = $trpc_value_s;
 }
}

funktioniert beim start ohne fehler, nur steht die Variable $trpc_parameters_smilies[$trpc_name_s] nicht zur verfühgung, schreibe ich das ganze anders...

Beispiel:

PHP-Code:
function smiliesdb()
{
 global 
$trpc_parameters_smilies[$trpc_name_s];
        
$trpc_name_s;
        
$trpc_value_s;
// Get smilies from db
if($trpc_result_smilies = @mysql_query("SELECT name, value FROM $TAB_parameters_smilies"))
{
 while (
$trpc_a_smilies mysql_fetch_array($trpc_result_smilies))
 {
  
$trpc_name_s $trpc_a_smilies["name"];
  
$trpc_value_s $trpc_a_smilies["value"];
  
$trpc_parameters_smilies[$trpc_name_s] = $trpc_value_s;
 }
}

gibt es eine fehlermeldung:

Parse error: parse error, expecting `','' or `';'' functions.inc.php on line xx und zwar in der zeile wo die variable $trpc_parameters_smilies[$trpc_name_s]; steht.
Mit Zitat antworten
  #2  
Alt 05.07.2003, 13:06:33
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 50
Beiträge: 4.748
Warum schreibst Du nicht
global $trpc_name_s; ??
Reihenfolge musst Du auch noch ändern. Sonst kennt er die Variable trotzdem nicht.

In der Zeile darüber hast Du es doch auch....
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #3  
Alt 05.07.2003, 13:17:26
OlliT OlliT ist offline
Anfänger
 
Registriert seit: Apr 2003
Beiträge: 118
Hi,

verstehe gerade nicht was du meinst. So vielleicht?

PHP-Code:
function smiliesdb()
{
 global 
$trpc_name_s;
           
$trpc_value_s
           
$trpc_parameters_smilies;

// Get smilies from db
if($trpc_result_smilies = @mysql_query("SELECT name, value FROM $TAB_parameters_smilies"))
{
 while (
$trpc_a_smilies mysql_fetch_array($trpc_result_smilies))
 {
  
$trpc_name_s $trpc_a_smilies["name"];
  
$trpc_value_s $trpc_a_smilies["value"];
  
$trpc_parameters_smilies[$trpc_name_s] = $trpc_value_s;
 }
}

Mit Zitat antworten
  #4  
Alt 05.07.2003, 13:18:36
Gweilo Gweilo ist offline
Member
 
Registriert seit: Oct 2002
Ort: ch
Beiträge: 822
global $trpc_parameters_smilies[$trpc_name_s];
$trpc_name_s;
$trpc_value_s;

In der ersten Variable kommt die zweite vor, die gar noch nicht "verglobalisiert" wurde. VErsuch mal $trpc_name_s zuerst zu definieren. Und sowieso geht diese schreibweise (so viel ich weiss) gar nicht. Versuch die Variablen mit komma zu trennen, so zB:

global $trpc_name_s, $trpc_value_s, $trpc_parameters_smilies[$trpc_name_s];
Mit Zitat antworten
  #5  
Alt 05.07.2003, 13:20:34
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 50
Beiträge: 4.748
Aus Deinem oberen Skriptschnipsel:
PHP-Code:
function smiliesdb() {
 global 
$trpc_name_s;
 global 
$trpc_value_s;
 global 
$trpc_parameters_smilies[$trpc_name_s]; 
Du machst eine Variable in einer Funktion doch global, da sie sonst nicht zur Verfügung stehen würde. Du sprichst aber eine Variable an, die erst eine Zeile später global gemacht wird. Da weiß der Interpreter das doch noch nicht. So wie es jetzt steht, könnte es klappen.
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #6  
Alt 05.07.2003, 13:25:09
OlliT OlliT ist offline
Anfänger
 
Registriert seit: Apr 2003
Beiträge: 118
Hi,

habe das so geändert:

PHP-Code:
 global $trpc_name_s$trpc_value_s$trpc_parameters_smilies[$trpc_name_s]; 
dabei gibts aber immernoch die fehlermeldung

Parse error: parse error, expecting `','' or `';'' in functions.inc.php on line xx wo sich $trpc_parameters_smilies[$trpc_name_s]; befindet. wnen ich das so schreibe

global $trpc_name_s, $trpc_value_s, $trpc_parameters_smilies;[/PHP]

geht es, allerdings fehlt mir dann die variable ja die ich brauhce :-/
Mit Zitat antworten
  #7  
Alt 05.07.2003, 13:27:31
OlliT OlliT ist offline
Anfänger
 
Registriert seit: Apr 2003
Beiträge: 118
Es kommt immer diese Fehlermeldung wo die variable mit den eckigen klammer steht.

$trpc_parameters_smilies[$trpc_name_s];
Mit Zitat antworten
  #8  
Alt 05.07.2003, 13:27:38
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 50
Beiträge: 4.748
Dann versuch es doch mal einzeln:
global $a;
global $b;
global $c;
...
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
  #9  
Alt 05.07.2003, 13:32:09
OlliT OlliT ist offline
Anfänger
 
Registriert seit: Apr 2003
Beiträge: 118
Hab ich auch... für jede variable einzeln geht aber auch nicht

Also nochmal genau beschreiben was ich will.

Das ganze ist ein funktions script was im chatserver include wird.

Eingentlich steht das ganze so in dem funktionsscript

PHP-Code:
// Get smilies from db
if($trpc_result_smilies = @mysql_query("SELECT name, value FROM $TAB_parameters_smilies"))
{
 while (
$trpc_a_smilies mysql_fetch_array($trpc_result_smilies))
 {
  
$trpc_name_s $trpc_a_smilies["name"];
  
$trpc_value_s $trpc_a_smilies["value"];
  
$trpc_parameters_smilies[$trpc_name_s] = $trpc_value_s;
 }

das funktioniert auch bestens, allerdings möchte ich nicht immer den chatserver neustarten, wenn ich in die datenbank einen smilie hinzufüge, bzw wenn ich einen befehl dafür änder. Deswegen hab ich mir gedacht packst du das ganze in eine funktion, rufst die funktion da hinter einfach erstmal auf, damit das auch zur verfühgung steht und baust dann noch einen befehl ein der die funktion nochmal bei bedarf aufruft. Aber so einfach scheint es doch nicht zu sein.
Mit Zitat antworten
  #10  
Alt 05.07.2003, 13:51:01
c4 c4 ist offline
SELFPHP Guru
 
Registriert seit: Jul 2002
Ort: Oberursel
Alter: 50
Beiträge: 4.748
Da ist übrigens noch mindestens eine Variable, die Du als global definieren musst: $TAB_parameters_smilies
Ich bin mir nicht sicher, ob Du den Datenbankhandle, auch global machen musst. Den DB-Handler hast Du (hoffentlich) an dieser Stelle erstellt: $db_handle=mysql_connect(...);
__________________
sic!
--> http://dbCF.de/
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:11:49 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.


© 2001-2020 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt