GET, Javaskript und Umlaute
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
- Martin Truckenbrodt
- Mitglied
- Beiträge: 1143
- Registriert: 15.08.2003 23:16
- Wohnort: Südthüringen
- Kontaktdaten:
GET, Javaskript und Umlaute
Hallo,
ich habe eine Problem mit nicht korrekt Umlauten bei folgendem Problem:
Ich sende den Inhalt eines textarea Formular Feldes mit der GET Methode und der phpBB3 popup Javscript Funktion in ein Popup Fenster.
Dort bekomme ich die Umlaute nicht korrekt angezeigt.
Hat das schon mal jemand hinbekommen?
Gruß Martin
ich habe eine Problem mit nicht korrekt Umlauten bei folgendem Problem:
Ich sende den Inhalt eines textarea Formular Feldes mit der GET Methode und der phpBB3 popup Javscript Funktion in ein Popup Fenster.
Dort bekomme ich die Umlaute nicht korrekt angezeigt.
Hat das schon mal jemand hinbekommen?
Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
- Martin Truckenbrodt
- Mitglied
- Beiträge: 1143
- Registriert: 15.08.2003 23:16
- Wohnort: Südthüringen
- Kontaktdaten:
Hallo evil<3 (der selbe wie auf phpbb.com ? ),
mittlerweile habe ich es zumindest zum Funktionieren gebracht: http://www.phpbb.com/community/viewtopi ... 5#p7761865
Aber ich werde morgen mal Deine Antwort verfolgen, da es mir immer lieber ist möglichst viel phpBB3 Funktionalität zu nutzen anstatt z.B wie hier mehrerer einzelner PHP Funktionen.
Danke und Gruß Martin
mittlerweile habe ich es zumindest zum Funktionieren gebracht: http://www.phpbb.com/community/viewtopi ... 5#p7761865
Aber ich werde morgen mal Deine Antwort verfolgen, da es mir immer lieber ist möglichst viel phpBB3 Funktionalität zu nutzen anstatt z.B wie hier mehrerer einzelner PHP Funktionen.
Danke und Gruß Martin
Zuletzt geändert von Martin Truckenbrodt am 19.11.2008 01:28, insgesamt 1-mal geändert.
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
Korrekt.Hallo evil<3 (der selbe wie auf phpbb.com ? ),

Deine lösung wird mit speziellen zeichen anderer sprachen nicht funktionieren. Der string ist UTF-8 enkodiert. Und das sollte er bleiben. Das problem ist, das du mit javascript eine URL ansteuern willst, die diesen string beinhaltet.
Nun, in PHP müsste man urlencode() verwenden. Da du das ganze jedoch (soweit ich es richtig verstanden habe) mit javascript machst, musst du escape() verwenden, was die äquivalente funktion ist.
Dadurch werden spezielle zeichen hexadezimal enkodiert (ein ' wird zum beispiel zu %27, man kann das auch in der ASCII tabelle nachschauen).
- Martin Truckenbrodt
- Mitglied
- Beiträge: 1143
- Registriert: 15.08.2003 23:16
- Wohnort: Südthüringen
- Kontaktdaten:
Hallo evil<3,
phpbb.com:
na dann werde ich das nächste mal Deutsch mit Dir reden, wenn Du beim Validieren eines meiner MODs mal wieder Probleme feststellst! Für beiden Seiten einfacher, oder?
Code:
Ich habe so was schon erwartet bzw. mir schon gedacht. Ich werde den MOD heute anpassen. Danke für die Infos! Mir ist jetzt auch einiges klarer als vorher.
Vielleicht bekomme ich den MOD die Woche noch fertig. Keine Angst! Wird erst einmal eine Beta Version!
Danke und Gruß Martin
phpbb.com:
na dann werde ich das nächste mal Deutsch mit Dir reden, wenn Du beim Validieren eines meiner MODs mal wieder Probleme feststellst! Für beiden Seiten einfacher, oder?

Code:
Ich habe so was schon erwartet bzw. mir schon gedacht. Ich werde den MOD heute anpassen. Danke für die Infos! Mir ist jetzt auch einiges klarer als vorher.
Vielleicht bekomme ich den MOD die Woche noch fertig. Keine Angst! Wird erst einmal eine Beta Version!

Danke und Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
- Martin Truckenbrodt
- Mitglied
- Beiträge: 1143
- Registriert: 15.08.2003 23:16
- Wohnort: Südthüringen
- Kontaktdaten:
Hallo evil<3,
urlencode() muss ich wohl trotzdem zusätzlich benutzen, oder?
Gruß Martin
urlencode() muss ich wohl trotzdem zusätzlich benutzen, oder?
Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
- Martin Truckenbrodt
- Mitglied
- Beiträge: 1143
- Registriert: 15.08.2003 23:16
- Wohnort: Südthüringen
- Kontaktdaten:
Hallo evil<3,
ein Problem sind eventuell enthaltene Leerzeichen. Außerdem müßte ich zumindest noch nl2br drüber lassen.
Hier mal ein bißchen Code:
Die URL fürs PopUp wird hiermit gebildet:
Hier die HTML Preview Seite:
Im Moment kämpfe ich allerdings mit dem LOG System um die MCP Aktivitäten zu protokollieren.
Gruß Martin
ein Problem sind eventuell enthaltene Leerzeichen. Außerdem müßte ich zumindest noch nl2br drüber lassen.
Hier mal ein bißchen Code:
Die URL fürs PopUp wird hiermit gebildet:
Code: Alles auswählen
switch ($preview)
{
case 'html':
$template->assign_vars(array(
'S_PREVIEW_HTML' => true,
'UA_POPUP_PREVIEW_HTML' => addslashes(append_sid("{$phpbb_root_path}includes/newsletter/html.$phpEx", 'n=' . $newsletter_id . '&subject=' . $db->sql_escape($subject) . '&message=' . $db->sql_escape($message))),
));
break;
case 'plain':
$template->assign_vars(array(
'S_PREVIEW_PLAIN' => true,
'UA_POPUP_PREVIEW_PLAIN' => addslashes(append_sid("{$phpbb_root_path}includes/newsletter/plain.$phpEx", 'n=' . $newsletter_id . '&subject=' . $db->sql_escape($subject) . '&message=' . $db->sql_escape($message))),
));
}
Code: Alles auswählen
<?php
/**
*
* @package Multiple Newsletters Add On
* @version $Id: html.php, v 1.000 2006/07/23 Martin Truckenbrodt Exp$
* @copyright (c) 2006 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
define('IN_PHPBB', true);
$phpbb_root_path = '../../';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
include($phpbb_root_path . 'includes/functions_posting.' . $phpEx);
include($phpbb_root_path . 'includes/bbcode.' . $phpEx);
include($phpbb_root_path . 'includes/newsletter/constants.'.$phpEx);
include($phpbb_root_path . 'includes/newsletter/functions.'.$phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('mods/newsletter');
$server_url = generate_board_url();
$email_id = request_var('e', 0);
$newsletter_id = request_var('n', 0);
if ($email_id)
{
$sql = 'SELECT email_subject, email_text, email_text_bitfield, email_text_uid, email_text_options, user_id FROM ' . NEWSLETTER_EMAIL_TABLE . '
WHERE email_id =' . $email_id;
$result = $db->sql_query($sql);
$email_row = $db->sql_fetchrow($result);
}
else
{
$bbcode_status = ($config['allow_bbcode'] && $config['allow_newsletter_bbcode']) ? true : false;
$url_status = ($config['allow_newsletter_links']) ? true : false;
$email_row['email_subject'] = request_var('subject', '', true);
$email_row['email_text'] = request_var('message', '', true);
$email_row['user_id'] = $user->data['user_id'];
generate_text_for_storage($email_row['email_text'], $email_row['email_text_uid'], $email_row['email_text_bitfield'], $email_row['email_text_options'], $bbcode_status, $url_status, '');
}
$email_row['email_subject'] = htmlentities(mb_convert_encoding($email_row['email_subject'],"ISO-8859-1","UTF-8"));
$email_row['email_text'] = htmlentities(mb_convert_encoding($email_row['email_text'],"ISO-8859-1","UTF-8"));
if (!$newsletter_id)
{
$sql = 'SELECT newsletter_id FROM ' . NEWSLETTER_EMAIL_TABLE . '
WHERE email_id = ' . $email_id;
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
if (!$row)
{
trigger_error('NO_NEWSLETTER');
}
else
{
$newsletter_id = $row['newsletter_id'];
}
}
$sql = 'SELECT newsletter_name, newsletter_public, newsletter_css, newsletter_footer, newsletter_footer_bitfield, newsletter_footer_uid, newsletter_footer_options FROM ' . NEWSLETTER_TABLE . '
WHERE newsletter_id = ' . $newsletter_id;
$result = $db->sql_query($sql);
$newsletter_row = $db->sql_fetchrow($result);
if (!$newsletter_row)
{
trigger_error('NO_NEWSLETTER');
}
if (!newsletter_is_viewable($user->data['user_id'], $newsletter_id, $newsletter_row['newsletter_public']))
{
trigger_error('NEWSLETTER_NOT_ALLOWED');
}
if (!$newsletter_row['newsletter_css'])
{
$sql = 'SELECT theme_id FROM ' . STYLES_TABLE . '
WHERE style_id = ' . $user->data['user_style'];
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
$sql = 'SELECT theme_path FROM ' . STYLES_THEME_TABLE . '
WHERE theme_id = ' . $row['theme_id'];
$result = $db->sql_query($sql);
$row = $db->sql_fetchrow($result);
$db->sql_freeresult($result);
$newsletter_row['newsletter_css'] = "<link rel=\"stylesheet\" href=\"" . $server_url . "/styles/" . $row['theme_path'] . "/theme/stylesheet.css \" />
<link rel=\"stylesheet\" href=\"". $server_url . "/styles/" . $row['theme_path'] . "/theme/email.css \" />";
}
else
{
$newsletter_row['newsletter_css'] = "<link rel=\"stylesheet\" href=\"" . $newsletter_row['newsletter_css'] . "\" />";
}
echo '<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\" dir=\"' . $user->lang['DIRECTION'] . '\" lang=\"' . $user->lang['USER_LANG'] . '\" xml:lang=\"' . $user->lang['USER_LANG'] . '\">
<head>
<meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\" />
<meta http-equiv=\"content-style-type\" content=\"text/css\" />
<meta http-equiv=\"content-language\" content=\"' . $user->lang['USER_LANG'] . '\" />
<meta http-equiv=\"imagetoolbar\" content=\"no\" />
<title>' . $newsletter_row['newsletter_name'] . ' ' . $email_row['email_subject'] . '</title>
' . $newsletter_row['newsletter_css'] . '
</head>
<body>
<div class="email">
<h2 class="email">' . $newsletter_row['newsletter_name'] . '</h2>
<h1 class="email">' . $email_row['email_subject'] . '</h1>
<br />
<h2 class="email">' . $user->lang['NEWSLETTER_WELCOME'] . ' ' . $user->data['username'] . ',</h2>
<br />
<p class="email">' . generate_text_for_display($email_row['email_text'], $email_row['email_text_uid'], $email_row['email_text_bitfield'], $email_row['email_text_options']) . '</p>
<br />
<p class="email">' . generate_text_for_display($newsletter_row['newsletter_footer'], $newsletter_row['newsletter_footer_uid'], $newsletter_row['newsletter_footer_bitfield'], $newsletter_row['newsletter_footer_options']) . '</p>
<br />
' . build_email_sender($email_id, $email_row['user_id']) . '
<p class="email">' . build_email_sender_signature($email_id, $email_row['user_id']) . '</p>
<br />
<p class="email">' . nl2br($config['board_email_sig']) . '</p>
</div>
</body>
</html>';
?>
Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core