Übergabe von Variablen funktioniert nicht

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
kratzer54847
Mitglied
Beiträge: 3065
Registriert: 20.01.2003 16:34
Wohnort: Düsseldorf/Hannover/Berlin
Kontaktdaten:

Beitrag von kratzer54847 »

und wenn du $edit testweise mal ausgibst?
Knowledge Base | MOD Datenbank | Boardsuche | HTML | PHP

Durch die richtige Verwendung dieser Links können viele Fragen beantwortet werden ;-)
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo kratzer54847,
Dein Tipp brachte mich wohl auf die richtige Spur. DAs Problem uß wohl also in folgender Zeile liegen:
print "<form method=\"get\" action=\"phpmn.php?edit=do&id=". $newsid ."&topical=". $topical ."&do=". $do ."\"><tr>\n";
Leige ich falsch mit der Vermutung, dass ich versteckte <input>s verwenden muss?

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
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Martin Truckenbrodt hat geschrieben: Leige ich falsch mit der Vermutung, dass ich versteckte <input>s verwenden muss?
Spielt keine Rolle.....

schon mal überlegt phpinfo(); bei phpmn.php auszuführen und zu schauen wie die Umgebungsvariablen gefüllt wurden?

1. Anmerkung: Man darf mit <? und ?> arbeiten
2. Anmerkung: Das Codegeschwülst

Code: Alles auswählen

(($edit == "do") and (($do == "html") or ($do == "plain"))
könnte man mit

Code: Alles auswählen

in_array($edit,array('do','html','plain'))
entschärfen.....
Benutzeravatar
kellanved
Mitglied
Beiträge: 570
Registriert: 05.02.2005 15:15
Wohnort: Berlin

Beitrag von kellanved »

Blutgerinsel hat geschrieben:
1. Anmerkung: Man darf mit <? und ?> arbeiten
2. Anmerkung: Das Codegeschwülst

Code: Alles auswählen

(($edit == "do") and (($do == "html") or ($do == "plain"))
könnte man mit

Code: Alles auswählen

in_array($edit,array('do','html','plain'))
entschärfen.....
Was allerdings ein vollkommen anderer logischer Ausdruck wäre...
Benutzeravatar
kratzer54847
Mitglied
Beiträge: 3065
Registriert: 20.01.2003 16:34
Wohnort: Düsseldorf/Hannover/Berlin
Kontaktdaten:

Beitrag von kratzer54847 »

was gibt er denn aus? :roll:
Knowledge Base | MOD Datenbank | Boardsuche | HTML | PHP

Durch die richtige Verwendung dieser Links können viele Fragen beantwortet werden ;-)
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Anommander Rake hat geschrieben:Was allerdings ein vollkommen anderer logischer Ausdruck wäre...
recht hast du.....

hab nur or gesehen :D
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo,
mit den hidden inputs flutscht die Sache jetzt.

Das Skript läuft soweit bis auf die Update Funktion.

Code: Alles auswählen

		$sql4 = "UPDATE $member_table SET members_name='$username', members_email='$useremail', members_newsid='$id', members_mailpref='$do', members_ip='$userip', memerb_timestamp='$userts', members_status='1' WHERE members_email='$useremail' AND members_newsid='$id'";
Ist die AND Verknüpfung beim WHERE Ausdruck gültig oder muß man das grundsätzlich anders schreiben?

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
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo,
das Problem lag hier:

Code: Alles auswählen

memerb_timestamp='$userts',
:oops:

So, das Skript funktioniert jetzt soweit. Jetzt kommt noch das Reinpacken in das Template und die Sprachdateien fehlen noch.

Danach werde ich den MOD offiziell vorstellen.

Vielen Dank schon mal alle, die mir hier geholfen haben!

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
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo miteinander,
da ich nun zum ersten Mal selbst eine Datei Template fähig machen will, gibt es nun schon wieder Probleme.
Ich habe die PHP erstmal weider etwas zusammen gekürzt und den Code Template fähig versucht zu machen:

Code: Alles auswählen

//Sammeln aller existierender Newsletter
$sql = "SELECT newsletter_id, newsletter_title, newsletter_description FROM $newsletter_table";
$result= mysql_query($sql);

//Sammeln aller Newsletter, in die sich der USer eingetragen hat
$sql2 = "SELECT * FROM $member_table WHERE members_email='$useremail'";
$result2 = mysql_query($sql2);

// Vorf&uuml;llen des &Uuml;bergabe Arrays
while ($subscribe = mysql_fetch_row($result2))
	{ $newsid = $subscribe[3];
		$status[$newsid]=$subscribe[4]; };

// Statusanzeige
while ($newsletter= mysql_fetch_row($result))

	{
		$newsid=$newsletter[0];
		// Auff&uuml;llen des &Uuml;bergabe Arrays f&uuml;r vern&uuml;nftige Statusanzeige, falls kein Abo vorhanden
		if ($status[$newsid] == "")
			{ $status[$newsid]= 'not subscribed'; }
		$link = "<a href=\"phpmn.php?edit=yes&id=". $newsid ."&topical=". $status[$newsid] ."\"><img src=\"templates/subSilver/images/lang_german/icon_edit.gif\" alt=\"Bearbeiten oder l&ouml;schen\" title=\"Bearbeiten oder l&ouml;schen\" border=\"0\" /></a>";
		$template->assign_block_vars('newsletter', array(
			'ID' => $newsid,
			'NAME' => $newsletter[1],
			'DESCRIPTION' => $newsletter[2],
			'TOPICAL' => $status[$newsid],
			'LINK' => $link
			));

	};


/*
+----------------------------------------------------------
| Start output the page
+----------------------------------------------------------
*/

$page_title = $lang['PHPMN'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);

$template->set_filenames(array(
	'phpmn' => 'phpmn.tpl')
);

$template->assign_vars(array(
	'L_PHPMN_NAME' => $lang['Name'],
	'L_PHPMN_DESCRIPTION' => $lang['Description'],
	'L_PHPMN_STATUS' => $lang['Status'],
	'L_PHPMN_EDIT' => $lang['Edit'])

);

//
// Generate the page
//
$template->pparse('phpmn');
Dann habe ich eine tpl Datei erstellt, welche natürlich im subSiler Ordner liegt:

Code: Alles auswählen

<table width="100%" cellspacing="0" cellpadding="2" border="0">
  <tr>
	<td><span class="gensmall">
	<!-- BEGIN switch_user_logged_in -->
	{LAST_VISIT_DATE}<br />
	<!-- END switch_user_logged_in -->
	{CURRENT_TIME}<br />
	</span><span class="nav"><a href="{U_INDEX}" class="nav">{L_INDEX}</a> -> <a href="{U_PHPMN}" class="nav">{L_PHPMN}</a></span></td>
  </tr>
</table>



<table align="center" class="forumline">
<th>{L_PHPMN_NAME}</th><th>{L_PHPMN_DESCRIPTION}</th><th>{L_PHPMN_STATUS}</th><th>{L_PHPMN_EDIT}</th>

	<tr>
		<td class="row1">{newsletter.NAME}</td>
		<td class="row1">{newsletter.DESCRIPTION}</td>
		<td class="row2" align="center"><b>&nbsp;&nbsp;{newsletter.TOPICAL}&nbsp;&nbsp;</b></td>
		<td class="row3">{newsletter.LINK}</td>
	</tr>

</table>
Leider kommen aber die Daten nicht in der tpl Datei an. Die Variablen werden in PHP Datei definitiv noch abgehandelt und gefüllt, was ich mit echo erfolgreich überprüft habe.

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
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo,
der Inhalt der tpl Datei sieht jetzt so aus:

Code: Alles auswählen

<table width="100%" cellspacing="0" cellpadding="2" border="0">
	<tr>
		<td><span class="gensmall">
		<!-- BEGIN switch_user_logged_in -->
		{LAST_VISIT_DATE}<br />
		<!-- END switch_user_logged_in -->
		{CURRENT_TIME}<br />
		</span><span class="nav"><a href="{U_INDEX}" class="nav">{L_INDEX}</a> -> <a href="{U_PHPMN}" class="nav">{L_PHPMN}</a></span></td>
	</tr>
</table>



<table align="center" class="forumline">
<th>{L_PHPMN_NAME}</th><th>{L_PHPMN_DESCRIPTION}</th><th>{L_PHPMN_STATUS}</th><th>{L_PHPMN_EDIT}</th>

<!-- BEGIN newsletter -->
	<tr>
		<td class="row1">{newsletter.NAME}</td>
		<td class="row1">{newsletter.DESCRIPTION}</td>
		<td class="row2" align="center"><b>&nbsp;&nbsp;{newsletter.TOPICAL}&nbsp;&nbsp;</b></td>
		<td class="row3">{newsletter.LINK}</td>
	</tr>
</table>
<!-- END newsletter -->
Jetzt kommt eine Fehlermeldung: http://paludarium.pipidae.de/cgi/phpBB2/phpmn.php

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
Antworten

Zurück zu „Coding & Technik“