Seite 2 von 3

Verfasst: 07.06.2007 17:54
von Miriam
Ergo: Deine Variablenübergabe / -übernahme funktioniert nicht.

Verfasst: 07.06.2007 17:55
von raphael
Datei ist aktualisiert.
An alle schonmal ein Dankeschön für die Hilfe.

Verfasst: 07.06.2007 17:59
von Miriam

Verfasst: 07.06.2007 17:59
von Jan500
such mal
// print_r($_POST);
for ($i=0;$i < 32;$i++);
ersetz es durch
// print_r($_POST);
for ($i=0;$i < 32;$i++)
{
und suche
else
{
$message = $lang['cl_acp_config_updated'] . "<br /><br />" . sprintf($lang['Click_return_config'], "<a href=\"" . append_sid("admin_cl_teams.$phpEx") . "\">", "</a>") . "<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=right") . "\">", "</a>");
message_die(GENERAL_MESSAGE, $message);
}
ersetze es mit
else
{
$message = $lang['cl_acp_config_updated'] . "<br /><br />" . sprintf($lang['Click_return_config'], "<a href=\"" . append_sid("admin_cl_teams.$phpEx") . "\">", "</a>") . "<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=right") . "\">", "</a>");
message_die(GENERAL_MESSAGE, $message);
}
}
Jan

Verfasst: 07.06.2007 18:01
von Miriam
Na gut, wenn wir nun also schon beim Auflösen sind:

Code: Alles auswählen

else
{
	while($row = $db->sql_fetchrow($result))
	{
		$team_id[] = $row['team_id'];
		$team_name[] = $row['team_name'];
		$team_image[] = $row['team_img'];
		$team_link[] = $row['team_link'];
	}
for ($i=0;$i < 32;$i++);
}
lösche darin:

Code: Alles auswählen

for ($i=0;$i < 32;$i++);

Verfasst: 07.06.2007 18:04
von Jan500
btw, ich würde die 32 nicht so hardcoded da reinschrieben... sondern dynamisch anhand der post ergebnisse (count)

Jan

Verfasst: 07.06.2007 18:08
von Miriam
Oder mittels dieser Hilfe -> KB:template_syntax.
Abschnitt Schleifen und Blöcke

Verfasst: 07.06.2007 19:36
von raphael
Danke für die Hinweise (auch in Bezug auf andere Unschönheiten im Code).
Dem Ziel komme ich ein Stück näher.

Die Veränderungen von Jan500 bewirken, dass der 1. Datensatz geupdatet wird.
Die restlichen 31 Sätze bleiben unberührt.
echo $sql; hat geschrieben:UPDATE phpbb_cl_teams SET team_name = 'Name1', team_img = 'name1.gif', team_link = '' WHERE team_id = '1'

Verfasst: 07.06.2007 19:59
von Jan500
das kommt daher, das du eine meldung ausgibst
du müsstest die schleife vor dser meldung beenden... und dann erst ausgeben...
if( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, "Could not update team information in cl configuration", "", __LINE__, __FILE__, $sql);
}
else
{
$message = $lang['cl_acp_config_updated'] . "<br /><br />" . sprintf($lang['Click_return_config'], "<a href=\"" . append_sid("admin_cl_teams.$phpEx") . "\">", "</a>") . "<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=right") . "\">", "</a>");
message_die(GENERAL_MESSAGE, $message);
}
Jan

Verfasst: 07.06.2007 20:21
von raphael
Jetzt läuft alles wie gewollt!
Letztendlich funktionierte es mit folgendem Code:

Code: Alles auswählen

if( isset($HTTP_POST_VARS['submit']) )
{
	$t_id = $_POST["t_id"];
	$t_name = $_POST["t_name"];
	$t_image = $_POST["t_image"];
	$t_link = $_POST["t_link"];

	for ($i=0;$i < 32;$i++)
	{	
		$sql = "UPDATE " . CL_TEAMS_TABLE . " SET team_name = '$t_name[$i]', team_img = '$t_image[$i]', team_link = '$t_link[$i]' WHERE team_id = '$t_id[$i]' ";

		if( !($result = $db->sql_query($sql)) )
		{
			message_die(GENERAL_ERROR, "Could not update team information in cl configuration", "", __LINE__, __FILE__, $sql);
		}
	}
	$message = $lang['cl_acp_config_updated'] . "<br /><br />" . sprintf($lang['Click_return_config'], "<a href=\"" . append_sid("admin_cl_teams.$phpEx") . "\">", "</a>") . "<br /><br />" . sprintf($lang['Click_return_admin_index'], "<a href=\"" . append_sid("index.$phpEx?pane=right") . "\">", "</a>");
	message_die(GENERAL_MESSAGE, $message);
}
So hat man wieder etwas gelernt.
Ein Dankeschön.