Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] In include-Datei definierte Variable verwenden (https://www.delphipraxis.net/27637-%5Bphp%5D-include-datei-definierte-variable-verwenden.html)

fred.reichbier 13. Aug 2004 11:29


[PHP] In include-Datei definierte Variable verwenden
 
Hi Leute,
nehmen wir mal an,
ich hätte eine Datei Start.php
Code:
<?
include("mysql.inc.php");
$v = mysql_connect($host,$user,$passwort);
?>
Und in Mysql.inc.php
Code:
$host = "localhost";
$user = "user";
$passwort = "passwort";
Da kommen immer Fehler von wegen "Unbekannte Variable $host,$user,$passwort".
Wie kann ich machen dass ich in start.php auf $host + co zugreifen kann?
MfG,
fred

fkerber 13. Aug 2004 11:36

Re: [PHP] In include-Datei definierte Variable verwenden
 
Hi!

Mach vielleicht statt include require, aber es sollte so gehen.

Ciao Frederic

fred.reichbier 13. Aug 2004 11:39

Re: [PHP] In include-Datei definierte Variable verwenden
 
Er sagt:
Zitat:

$host = "localhost"; $user = "root"; $passwort = "";
Notice: Undefined variable: host in C:\XITAMI-25\APP\webpages\cms\show.php on line 3

Notice: Undefined variable: user in C:\XITAMI-25\APP\webpages\cms\show.php on line 3

Notice: Undefined variable: passwort in C:\XITAMI-25\APP\webpages\cms\show.php on line 3
[edit=sakura] [quote]Korrigiert. Mfg, sakura[/edit]

Igotcha 13. Aug 2004 11:42

Re: [PHP] In include-Datei definierte Variable verwenden
 
Hmmm, ist das auch die richtige Datei? Denn die Fehlermeldung bezieht sich auf:

Zitat:

Notice: Undefined variable: host in C:\XITAMI-25\APP\webpages\cms\show.php on line 3
Und in Deinem Post heisst die Datei "Start.php".

Grundsätzlich sollte das funktionieren, denn ich benutze genau so eine Konstruktion auch in meinen PHP-Skripten.

Gruß Igotcha

fred.reichbier 13. Aug 2004 11:44

Re: [PHP] In include-Datei definierte Variable verwenden
 
oh, sorry, show.php :oops:

fkerber 13. Aug 2004 11:46

Re: [PHP] In include-Datei definierte Variable verwenden
 
Hi!

Ein Auszug aus einer Datei, wo es 100% funktioniert:

Zitat:

<?php require_once('Connections/connmpg.php'); ?>
Zitat:

Zitat von Connmpg

$HOSTNAME = "Host";
$DATABASE = "DB;
$USERNAME = "Name";
$PASSWORD = "Passwort";

Ciao Frederic

Igotcha 13. Aug 2004 11:49

Re: [PHP] In include-Datei definierte Variable verwenden
 
Dann muss woanders der Wurm drin sein, denn "include()" macht nichts anderes als aus:

Code:
<?
include("mysql.inc.php");
$v = mysql_connect($host,$user,$passwort);
?>
Mysql.inc.php
Code:
$host = "localhost";
$user = "user";
$passwort = "passwort";
das:

Code:
<?
$host = "localhost";
$user = "user";
$passwort = "passwort";
$v = mysql_connect($host,$user,$passwort);
?>
Stimmt denn der Pfad zu"mysql.inc.php" überhaupt? Denn meist packt man die Datei mit den DB-Daten in ein extra Verzeichnis und sichert dieses durch eine .htaccess, so dass der include dann etwa so aussieht:

include ("secure/mysql.inc.php");

Phoenix 13. Aug 2004 11:57

Re: [PHP] In include-Datei definierte Variable verwenden
 
Includes werden separat behandelt, Variablen in Include-Dateien sind nur lokal (also innerhalb des Includes) verwendbar.

Du musst sie nach dem Include mit
Code:
global $variable;
Als Global deklarieren, damit kannst Du sie dann auch in der übergeordneten Datei benutzen.

Edit Nachtrag:
Also komplett wäre das dann so:
Code:
<?
include("mysql.inc.php");

global $host;
global $user;
global $passwort;

$v = mysql_connect($host,$user,$passwort);
?>

czapie 13. Aug 2004 12:03

Re: [PHP] In include-Datei definierte Variable verwenden
 
nein Phoenix,
ich glaube nicht.
Das was du erklärt hast müßte geschehen, wenn die Variablen in Funktionen verwendet werden sollen,
"einfach nur so" müßte include reichen.

Czapie.

Phoenix 13. Aug 2004 12:08

Re: [PHP] In include-Datei definierte Variable verwenden
 
Zitat:

Zitat von czapie
nein Phoenix,
ich glaube nicht.
Das was du erklärt hast müßte geschehen, wenn die Variablen in Funktionen verwendet werden sollen,
"einfach nur so" müßte include reichen.

Pech für Dich, wenn Du das nicht glaubst :roll:
Liest Du http://www.php.net/language.variables.scope, glaubst Du.

czapie 13. Aug 2004 12:14

Re: [PHP] In include-Datei definierte Variable verwenden
 
Hi,
sorry für meinen Tagesablauf ist es jetzt gerade noch verdammt früh am Morgen, es kann also sein
dass der Motor noch nicht warm gelaufen ist,
aber Phoenix auch wenn ich das gelesen habe glaube ich dir nicht, denn darin wird lediglich
die Verwendung von "global" in Funktionen erklärt, was ich oben auch schon erwähnte.
:?:

Phoenix 13. Aug 2004 12:19

Re: [PHP] In include-Datei definierte Variable verwenden
 
:wall:
Dann werd erstmal Wach, und dann probiere es aus, wenn Du nicht glaubst was da steht.
Schau vielleicht noch in der PHP-Dokumentation zum Thema includes nach, die ist auch zu empfehlen.

Und wenn Du dann etwas weniger Ceratungsresistent bist, wirst Du vielleicht sehen, das ich nach jahrelanden PHP-Erfahrungen ziemlich genau weiss, von was ich hier rede.

czapie 13. Aug 2004 12:37

Re: [PHP] In include-Datei definierte Variable verwenden
 
Hey hey nicht gleich grantig werden.

Guck mal

Zwei Dateien:

inc.inc
Code:
<?php

$a = "Hallo";

?>
und

testphp.php
Code:
<?php

include("inc.inc");

function ausgabe($b)
{
echo $b;
}


ausgabe($a);

?>
Das Ergebnis siehst du auf der gelinkten Seite.
Und ich denke das ich das was fred auch hatte.
Czapie.

fiasko 13. Aug 2004 12:41

Re: [PHP] In include-Datei definierte Variable verwenden
 
Zitat:

Zitat von fred.reichbier
Code:
$host = "localhost";
$user = "user";
$passwort = "passwort";
Da kommen immer Fehler von wegen "Unbekannte Variable $host,$user,$passwort".
Wie kann ich machen dass ich in start.php auf $host + co zugreifen kann?
MfG,
fred

Du solltest in der zu inkludierenden Datei am Anfang auch einen öffnenden PHP-Tag einfügen . dann klappt es auch. Deswegen steht bei deinem Versuch auch $user=... mit auf der Web-Site.

Igotcha 13. Aug 2004 13:17

Re: [PHP] In include-Datei definierte Variable verwenden
 
Zitat:

Zitat von Phoenix
Und wenn Du dann etwas weniger Ceratungsresistent bist, wirst Du vielleicht sehen, das ich nach jahrelanden PHP-Erfahrungen ziemlich genau weiss, von was ich hier rede.

Naja ;-)

Es sind die "<?" und "?>", da hat fiasko recht und wegen dem "$global" err, da lies besser selbst nochmal nach, das hat nämlich mit dem Problem hier und wie es angewendet wird, nichts zu tun.

Gruß Igotcha

czapie 13. Aug 2004 13:40

Re: [PHP] In include-Datei definierte Variable verwenden
 
Danke Igotcha.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:08 Uhr.

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