Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Variablen per Include verwenden [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Variablen per Include verwenden


 
tolwin
30-06-2005, 14:50 
 
Hallo Forum,

ich habe zwei Dateien mit denen ich Zugriffszahlen zweier Anwendungen
aus der DB lese


require('/bla/bla/bla/bla/ez_sql.php');
$count_aufrufe_okb = $db->get_var("SELECT count_aufruf FROM COUNT");
$count_empfehlung_okb = $db->get_var("SELECT count_empfehlung FROM COUNT");
echo $count_aufrufe_okb ."<br>";
echo $count_empfehlung_okb ."<br>";

require('/bla/bla/bla/bla/ez_sql_jkb.php');
$count_aufrufe_jkb = $db->get_var("SELECT count_aufruf FROM COUNT");
$count_empfehlung_jkb = $db->get_var("SELECT count_empfehlung FROM COUNT");
echo $count_aufrufe_jkb ."<br>";
echo $count_empfehlung_jkb ."<br>";


In einer dritten Datei binde ich beide per include ein


include('/bla/bla/bla/bla/zugriffe_1.php');
include('/bla/bla/bla/bla/zugriffe_2.php');



Ich bekomme immer nur die Werte der zuerst eingebundenen Datei angezeigt, die zweiten Werte verden verschluckt. Habe ich schon include und require in Kombination genutzt oder die Variablen per echo in der dritten Datei auszugeben, leider ohne Erfolg. Kann mir jemand sagen woran dies liegt?
Vielen Dank
Tolwin

 
Shurakai
30-06-2005, 14:56 
 
Bekommst du denn Testausgaben ausgegeben?


P.S.: WIeso machst du immer 1 eigenen Select? Selecte doch einfach die 2 Spalten...

 
tolwin
30-06-2005, 15:00 
 
Hallo Shurakai,

ich muss 2 SELECTS machen, da die Daten in 2 separaten DB liegen.
Wenn ich die includierten Dateien einzeln aufrufe, bekomme ich die Werte angezeigt. Nach dem Include beider in der Dritten nur noch die Werte der zuerst eingebundenen.
Gruß
Tolwin

 
TobiaZ
30-06-2005, 15:01 
 
testausgaben, debugging, fehlermeldungen, ...???

 
tolwin
30-06-2005, 15:06 
 
Hallo TobiaZ,

Testausgabe:

echo in Datei eins "Ich bin Datei 1<br>";
echo in Datei zwei "Ich bin Datei 2<br>";
error_reporting(1); - kein Ergebnis

Ausgeben wird je nach Reihenfolge der Einbindung

echo eins oder zwei mit den zugehörigen Werten.... was könnte man den noch machen???

Gruß
Tolwin

 
Rumo
30-06-2005, 15:11 
 
und bei error_reporting(E_ALL);
gab's da nicht irgendein unterschied zwischen include und inquire?
Na, was gemerkt?
Ich war mal früher dran!! :D

 
TobiaZ
30-06-2005, 15:11 
 
Das error_reporting "E_ERROR" kannst dir vermutl. sparen. Guck mal "E_ALL" an.

BTW: fehlen mir die Testausgaben bezüglich SQL.Dafür kannst du nicht richtig schreiben! :P

 
TobiaZ
30-06-2005, 15:13 
 
gab's da nicht irgendein unterschied zwischen include und inquire? Ja, letzteres existiert nicht.

 
tolwin
30-06-2005, 15:14 
 
Kein Ergebnis,
error_reporting(E_ALL) wirft nix aus.
Die SQL Statements funktionieren einwandfrei, da ich sie schon in anderen Datein separat verwende.... es ist schon sehr dubios.
Gruß
Tolwin

 
Rumo
30-06-2005, 15:17 
 
:p
Hm... was könnte Rumo mit inquire wohl gemaint haben?
Ich musst halt auf die Tasten hauen, um nicht wieder den vorletzten Beitrag zu schreiben, der vor dem, wo dann drinsteht:
Danke, TobiaZ, daran hat's gelegen!

 
TobiaZ
30-06-2005, 15:19 
 
Die SQL Statements funktionieren einwandfrei, da ich sie schon in anderen Datein separat verwende Ach, und das bringt dich nicht auf die idee, dass es vielleicht zusammen nicht mehr läuft?

 
tolwin
30-06-2005, 15:23 
 
Hmmm,

das würde mich wundern, da ich als Libary zum vereinfachten SQL zugriff ein File namens ez_sql verwende welches ich mit unterschiedlichen Namen für beide konfiguriert habe. Es sind somit zwei völlig unabhängige Zugriffe auf getrennte Tabellen. Könnte evtl. der gleichzeitige Zugriff auf die MySQL ein Problem sein?

Gruß
Tolwin

 
TobiaZ
30-06-2005, 15:36 
 
$db wird also jeweils neu in den requires definiert?

würde es dir sehr weh tun, wenn du beim zweiten mal $db2 verwendest?

BTW:wieso benutzt du hierfür zwei queries?
$count_aufrufe_okb = $db->get_var("SELECT count_aufruf FROM COUNT");
$count_empfehlung_okb = $db->get_var("SELECT count_empfehlung FROM COUNT");

ich tuh mich außerdem ein bisschen schwer damit, dass die Tabelle COUNT heißt. Aber da gibts ja keine Probleme?

 
tolwin
30-06-2005, 15:46 
 
Die Variable $db ist ein Funktionsaufruf in der benannten Libary...
um diese in $db2 umzubenennen müsste ich größere Eingriffe in der
ez_sql_jkb.php vornehmen. Habe jetzt einmal versucht auf die jkb Count Tabelle mit neuem Namen COUNT2 zuzugreifen.... somit sollten keine Konflikte mehr entstehen. Ging separat aufgerufen wieder wunderbar ,
aber nicht zusammen.

Ich habe der Übersichtlichkeit halber die Statements getrennt.

Gruß
Tolwin

 
TobiaZ
30-06-2005, 15:53 
 
Ich habe der Übersichtlichkeit halber die Statements getrennt. vermutlich auch performance-halber :p

Naja, mehr kann ich nun wirklich nicht raten...

kannst ja testweise mal ein unset benutzen.

BTW: Es kann eigentlich nicht sein, dass du zweimal eine nahezu ident. Datei einbinden musst.

 
tolwin
30-06-2005, 16:03 
 
Hallo TobiaZ,
ich habe mich zwischenzeitig doch mal der ez_sql.php angenommen und
alle funktionen und Aufrufe an $db2 angepasst. Somit sollten alle Zweifel
was die getrennten AUfrufe betrifft beseitigt sein. Im Moment sehen beide Dateien so aus

error_reporting(E_ALL);
require('/bla/bla/bla/ez_sql.php');
$count_aufrufe_okb = $db->get_var("SELECT count_aufruf FROM COUNT");
$count_empfehlung_okb = $db->get_var("SELECT count_empfehlung FROM COUNT");
echo $count_aufrufe_okb ."<br>";
echo $count_empfehlung_okb ."<br>";
echo "ICH bin Datei 1<br>";

error_reporting(E_ALL);
include('/bla/bla/bla/ez_sql_jkb2.php');
$count_aufrufe_jkb = $db2->get_var("SELECT count_aufruf FROM COUNT2");
$count_empfehlung_jkb = $db2->get_var("SELECT count_empfehlung FROM COUNT2");
echo $count_aufrufe_jkb ."<br>";
echo $count_empfehlung_jkb ."<br>";
echo "ICH bin Datei 2<br>";



und hier die zusammenfassende Datei


error_reporting(E_ALL);
require('/bla/bla/bla/zugriffe_okb.php');
include('/bla/bla/bla/zugriffe_jkb.php');


leider noch immer mit dem Ergebnis dass beide getrennt funktionieren,
zusammen aber nicht.... es ist echt zum durchdrehen, bei so ner Kleinigkeit
solche Probleme zu haben :)

Danke und Gruß
Tolwin

 
wahsaga
30-06-2005, 16:11 
 
Original geschrieben von tolwin
require('/bla/bla/bla/ez_sql.php');
was steht in dieser datei drin?

funktionsdeklarationen o.ä.?


dann hätte beim ursprünglichen versuch, wo du diese datei in jedem deiner includes eingebunden hast, ja ein fehler kommen müssen - cannot redeclare function xy oder so ähnlich.

an der stelle hätte der aufruf also besser mit requiere_once erfolgen sollen.

 
tolwin
30-06-2005, 16:13 
 
Hallo wahsaga,

stimmt, so war es auch ursprünglich. Hatte aber auch hier probiert ob
es vielleicht daran liegen könnte und hatte require_once in require und include geändert. Ging aber auch nicht.
Gruß
Tolwin

 
TobiaZ
30-06-2005, 16:15 
 
da kein declarationfehler genannt wurde, habe ich vermutet, dass er eine umgenannt hat.

hast du die ez_sql.php oder die ez_sql_jkb2.php bearbeitet?

hat deine SQL-Klasse ne entsprechende Fehlerbehandlung?

Pfade etc. sind korrekt? auch nach includen in der hauptdatei?

 
tolwin
30-06-2005, 16:22 
 
hast du die ez_sql.php oder die ez_sql_jkb2.php bearbeitet?

habe den Klassen-Funktionsaufruf $db-> .....
in der ez_sql_jkb2.php in $db2-> umbenannt.

hat deine SQL-Klasse ne entsprechende Fehlerbehandlung?

Die Klasse hat ein eigenes Errorhandling, wird aber keiner geworfen

Pfade etc. sind korrekt? auch nach includen in der hauptdatei?

Alle Pfade sind m.E. korrekt.


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:22 Uhr.