Seite 1 von 1

lang_main.php Variablen in DB-SQL-Installer verwenden...

Verfasst: 30.10.2003 17:31
von AWSW
Hallo Leute,
kleines Problem... Wenn ich im unten angehängten DB-Installer Variablen aus der lang_main.php verwenden möchte, dann erhalte ich folgende Fehlermeldung:
Parse error: parse error, unexpected T_BAD_CHARACTER, expecting T_STRING or T_VARIABLE or T_NUM_STRING in intro_portal_mod_db_install.php on line 129
Hier die betroffenen Stellen:
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 1, 0, 1, '$lang[\'IntroPortalMOD1\']', 'intro.php', -1, 2)",
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 2, 0, 1, '$lang[\'IntroPortalMOD2\']', 'portal.php', -1, 2)",
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 3, 0, 1, '$lang[\'IntroPortalMOD3\']', 'index.php', -1, 2)",

...

"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 4, 0, 2, '$lang[\'Register\']', 'profile.php?mode=register', -1, 0)",
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 5, 0, 2, '$lang[\'Profile\']', 'profile.php?mode=editprofile', 0, 2)"
http://www.awsw.de/Forum/upload/intro_p ... nstall.zip

Wenn ich die Stellen von $lang[\'Profile\'] in $lang[Profile] ändere, werden dann nicht mehr die Variablen eingetragen, sondern direkt die in der lang_main.php hinterlegten Texte - also in dem Fall "Profil" *schnief*... Wie muss ich die Zeilen im SQL-Installer abändern, damit in die Datenbank dieser Text hinterlegt wird: $lang['Profile'] ?!?

Danke im Vorraus! :roll:

Einer der auf dem Schlauch steht ;)

Verfasst: 30.10.2003 17:53
von Helmut
Hallo AWSW,

Kann es sein daß da ein Komma vergessen Hast?
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 1, 0, 1, '$lang[\'IntroPortalMOD1\']', 'intro.php', -1, 2)",
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 2, 0, 1, '$lang[\'IntroPortalMOD2\']', 'portal.php', -1, 2)",
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 3, 0, 1, '$lang[\'IntroPortalMOD3\']', 'index.php', -1, 2)",

...

"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 4, 0, 2, '$lang[\'Register\']', 'profile.php?mode=register', -1, 0)",
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 5, 0, 2, '$lang[\'Profile\']', 'profile.php?mode=editprofile', 0, 2)", <---
Gruß Helmut :wink:

Verfasst: 30.10.2003 18:32
von AWSW
Hallo Helmut,
nein nein das ist es nicht... Das war die letzte Zeile bevor das Array zu gemacht wird:
"INSERT INTO " . $table_prefix . "introportalmodnav (link_active, link_id, link_cat, link_sub, link_name, link_url, link_level, link_level_type) VALUES (1, 5, 0, 2, '$lang[\'Profile\']', 'profile.php?mode=editprofile', 0, 2)"
);
Der Fehler liegt IMHO eindeutig bei den einfachen Anführungszeichen in den $lang['XYZ'] Angaben :roll: :wink: :roll:

Verfasst: 30.10.2003 18:44
von Pyramide
Das $ musst du auch escapen - "...\$lang[\'blah\']...". Oder du verwendest ' und/oder [php:mysql_escape_string]

Verfasst: 30.10.2003 20:02
von AWSW
Danke Dir - der \ vor dem $ hat schon gereicht :)

Schönen Abend noch !