Seite 49 von 175

Verfasst: 04.06.2006 03:44
von mgutt
Die Sprungmarke muss schon drin bleiben. Sie hat zwar mit dem 404er nichts zu tun, aber du nimmst der seite dann unnötig komfort:

Code: Alles auswählen

$redirect='<meta http-equiv="refresh" content="3;url=' . append_sid("sudoku.$phpEx?#grid") . '">';
wird zu:

Code: Alles auswählen

$redirect='<meta http-equiv="refresh" content="3;url=' . append_sid("sudoku.$phpEx") . '#grid">';
was der quatsch mit dem fragezeichen sollte verstehe ich nicht.

die anderen 404 fehler rühren daher: daraus wird ?& und damit ein ziemlicher unsinn. nach .php folgt ein fragezeichen und dann der erste wert: .php?id=12

sollte man mehrere werte zuweisen folgt erst nach dem zuerst angegeben wert der nächste verbunden mit einem ampersand: .php?id=12&start=20

hat der modder irgendwie falsch gedacht. und wie gesagt, die sprungmarke kommt innerhalb den href, aber außerhalb der append_sid, wie ich es beim ersten beispiel bereits gezeigt habe.

der grund dafür ist einfach.. wenn jetzt an die oben genannte url eine sid angehangen wird, dann sieht das plötzlich so aus:
sudoku.php?#grid&sid=234234234234

damit wären das zwei fehler.. der 1. verstößt gegen den standard und führt bei manchen browsern zum seitenfehler und der 2. ist, dass die sid als sprungmarke angesehen wird und der user ausgeloggt würde, weil sie nicht ordentlich übertragen wird.

gruß

Verfasst: 05.06.2006 17:25
von Evilmachine
Hallo.

habe das ganze gestern eingebaut. Erstmal grosses Lob an den Coder.

ABER. Eine kleinigkeit funktioniert bei mir nicht.

Die Forumsansicht, was normalerweise viewforum.php wäre, geht nicht.

Klickt man auch ein forum ist die adresse zwar z.b. /board/allgemeines-f1.html (im Link) beim drauf klicken landet man aber immer auf der Startseite des Forums.

Das ganze passiert bei allen Links in der Index.php und bei den Link der Übersicht wo man sich befindet.

Irgendwelche Ideen?

Verfasst: 05.06.2006 21:33
von IPB_Flüchtling
Ahoi,

ein (hoffentlich) letztes Mal back to Sudoku! :P

Zunächst wieder einmal den größten Dank - die 404er sind verschwunden! Und auch die Funktionen "Zahl kaufen" und "Puzzle zurücksetzen" funktionieren schon wieder!

Was noch nicht funktioniert: Ich kann bereits gesetzte Zahlen nicht wieder löschen und auch keine neuen Zahlen setzen. Stattdessen kommt der - gar nicht zutreffende - Fehler "Du kannst eine vorgegebene Zahl nicht verändern".

Ich stelle zunächst einmal alle Änderungen vor, die ich nach Deinen Tipps in der sudoku.php vorgenommen habe:

Original:

Code: Alles auswählen

$redirect='<meta http-equiv="refresh" content="3;url=' . append_sid("sudoku.$phpEx?") . '">';
Neu:

Code: Alles auswählen

$redirect='<meta http-equiv="refresh" content="3;url=' . append_sid("sudoku.$phpEx") . '">';
Original:

Code: Alles auswählen

$admin_tools=( $userdata['user_level'] == ADMIN ) ? '|| <a href="' . append_sid("sudoku.$phpEx?&mode=resynch") . '" class="nav">' . $lang['sudoku_resynch'] . '</a> || <a href="' . append_sid("sudoku.$phpEx?&mode=reset_game") . '" class="nav">' . $lang['sudoku_reset_game'] . '</a>' : '';
Neu:

Code: Alles auswählen

$admin_tools=( $userdata['user_level'] == ADMIN ) ? '|| <a href="' . append_sid("sudoku.$phpEx") . '?mode=resynch' . '" class="nav">' . $lang['sudoku_resynch'] . '</a> || <a href="' . append_sid("sudoku.$phpEx") . '?mode=reset_game' . '" class="nav">' . $lang['sudoku_reset_game'] . '</a>' : '';
Original:

Code: Alles auswählen

'RESET'=>'<a href="' . append_sid("sudoku.$phpEx?&mode=reset") . '" class="nav">' . $lang['sudoku_reset_grid'] . '</a>',
Neu:

Code: Alles auswählen

'RESET'=>'<a href="' . append_sid("sudoku.$phpEx") . '?mode=reset' . '" class="nav">' . $lang['sudoku_reset_grid'] . '</a>',
Original:

Code: Alles auswählen

		'S_CONFIRM_ACTION' => append_sid("sudoku.$phpEx?&mode=reset_game"),
Neu:

Code: Alles auswählen

		'S_CONFIRM_ACTION' => append_sid("sudoku.$phpEx") . '?mode=reset_game',
Original:

Code: Alles auswählen

	$redirect='<meta http-equiv="refresh" content="3;url=' . append_sid("sudoku.$phpEx?#grid") . '">';
Neu:

Code: Alles auswählen

$redirect='<meta http-equiv="refresh" content="3;url=' . append_sid("sudoku.$phpEx") . '#grid">';
Original:

Code: Alles auswählen

		'S_CONFIRM_ACTION' => append_sid("sudoku.$phpEx?&mode=buy&p=" . $pack . "&n=" . $num),
Neu:

Code: Alles auswählen

'S_CONFIRM_ACTION' => append_sid("sudoku.$phpEx") . '?mode=buy&p=' . $pack . '&n=' . $num,
Original:

Code: Alles auswählen

	$redirect='<meta http-equiv="refresh" content="3;url=' . append_sid("sudoku.$phpEx?#grid") . '">';
Neu:

Code: Alles auswählen

	$redirect='<meta http-equiv="refresh" content="3;url=' . append_sid("sudoku.$phpEx") . '#grid">';
Original:

Code: Alles auswählen

		'S_CONFIRM_ACTION' => append_sid("sudoku.$phpEx?&mode=reset"),
Neu:

Code: Alles auswählen

		'S_CONFIRM_ACTION' => append_sid("sudoku.$phpEx") . '?mode=reset',
Original:

Code: Alles auswählen

		$new_redirect='<meta http-equiv="refresh" content="6;url=' . append_sid("sudoku.$phpEx?") . '">';
Neu:

Code: Alles auswählen

		$new_redirect='<meta http-equiv="refresh" content="6;url=' . append_sid("sudoku.$phpEx") . '">';
Original:

Code: Alles auswählen

'BUY_NUMBER'=>'<a href="' . append_sid("sudoku.$phpEx?&mode=buy&p=" . $pack . "&n=" . $num) . '" class="nav">' . $lang['sudoku_buy_number'] . '</a>',
));
Neu:

Code: Alles auswählen

'BUY_NUMBER'=>'<a href="' . append_sid("sudoku.$phpEx") . '?mode=buy&p=' . $pack . '&n=' . $num . '" class="nav">' . $lang['sudoku_buy_number'] . '</a>' ));
Ich hoffe, in der sudoku.php keine Fehler gemacht zu haben. :oops: Ergo wird der eingangs beschriebene Fehler wohl mit der functions_sudoku.php zu tun haben.

In der functions_sudoku.php gibt es eigentlich nur ein paar Zeilen, die für den Fehler verantwortlich sein könnten:

Original:

Code: Alles auswählen

					$tile_url=( $tile[$tile_key] == 'x' ) ? append_sid("sudoku.$phpEx?&mode=insert&tile=" . $line_key . "_" . $key . "&p=$pack&n=$num&l=$level#grid") : append_sid("sudoku.$phpEx?&mode=edit&tile=" . $line_key . "_" . $key . "&p=$pack&n=$num&l=$level&val=" . ($tile[$tile_key]-10) . "#grid");

					$on_click=( $tile[$tile_key] == 'x' )  ?"sudoku('" .  append_sid("sudoku.$phpEx?&tile=" . $line_key . "_" . $key . "&p=$pack&n=$num&type=insert#grid") . "','','?')" : "sudoku('" . append_sid("sudoku.$phpEx?&tile=" . $line_key . "_" . $key . "&p=$pack&n=$num&type=edit#grid") . "','" . ($tile[$tile_key]) . "','" . ($tile[$tile_key]-10) . "')";
Neu:

Code: Alles auswählen

					$tile_url=( $tile[$tile_key] == 'x' ) ? append_sid("sudoku.$phpEx") . '?mode=insert&tile=' . $line_key . '_' . $key . '&p=$pack&n=$num&l=$level#grid' : append_sid("sudoku.$phpEx") . '?mode=edit&tile=' . $line_key . '_' . $key . '&p=$pack&n=$num&l=$level&val=' . ($tile[$tile_key]-10) . '#grid';

					$on_click=( $tile[$tile_key] == 'x' )  ?"sudoku('" .  append_sid("sudoku.$phpEx") . '?tile=' . $line_key . '_' . $key . '&p=$pack&n=$num&type=insert#grid' . "','','?')" : "sudoku('" . append_sid("sudoku.$phpEx") . '?tile=' . $line_key . '_' . $key . '&p=$pack&n=$num&type=edit#grid' . "','" . ($tile[$tile_key]) . "','" . ($tile[$tile_key]-10) . "')";
Irgendwo ist noch der Wurm drinnen. Aber im Wesentlichen sind wir jetzt schon sehr nahe daran, das Spiel wieder zum Laufen zu bringen, oder? :P

LG, IPB_Flüchtling

Verfasst: 06.06.2006 02:28
von mgutt
da musst du nochmal ran. da haben wir aneinander vorbei geredet. sowas:

Code: Alles auswählen

'S_CONFIRM_ACTION' => append_sid("sudoku.$phpEx?&mode=reset"),
wird zu sowas:

Code: Alles auswählen

'S_CONFIRM_ACTION' => append_sid("sudoku.$phpEx?mode=reset"),
also die variablen bleiben im append_sid. nur wenn eine sprungmarke vorkommt (die wird mit einem rautezeichen eingeleitet, muss die sprungmarke außerhalb von append_sid angehangen werden.

demnach wird aus dem:

Code: Alles auswählen

'BUY_NUMBER'=>'<a href="' . append_sid("sudoku.$phpEx?&mode=buy&p=" . $pack . "&n=" . $num) . '" class="nav">' . $lang['sudoku_buy_number'] . '</a>', 
));
das:

Code: Alles auswählen

'BUY_NUMBER'=>'<a href="' . append_sid("sudoku.$phpEx?mode=buy&p=" . $pack . "&n=" . $num) . '" class="nav">' . $lang['sudoku_buy_number'] . '</a>', 
));
bei beiden war der fehler, dass dem fragezeichen ein ampersand, also ein kaufmännisches und folgte, was nicht richtig war.

gruß

Verfasst: 06.06.2006 02:29
von mgutt
Evilmachine hat geschrieben:Hallo.

habe das ganze gestern eingebaut. Erstmal grosses Lob an den Coder.

ABER. Eine kleinigkeit funktioniert bei mir nicht.

Die Forumsansicht, was normalerweise viewforum.php wäre, geht nicht.

Klickt man auch ein forum ist die adresse zwar z.b. /board/allgemeines-f1.html (im Link) beim drauf klicken landet man aber immer auf der Startseite des Forums.

Das ganze passiert bei allen Links in der Index.php und bei den Link der Übersicht wo man sich befindet.

Irgendwelche Ideen?
du scheinst nicht die .htacess von seite 1 dieses beitrages hier zu nutzen.

gruß

Verfasst: 06.06.2006 14:14
von fanrpg
fanrpg hat geschrieben:@mgutt
Könntest du auch noch eine function schreiben das die links auch ausserhalb von phpBB umwandelt?
Also das nicht append_sid() genutzt wird.
Sondern was weiss ich seo_urls_2_links();
Das diese Function dann nicht an phpBB gebunden ist?
Das wäre schon praktisch bzw. sowas könnt ich gerade gebrauchen und da ich von regex 0 Ahnung habe ist das nix für micht.

Verfasst: 06.06.2006 15:40
von Seether
Verzeiht wenn ich nicht 50 Seiten durchlese...

Sehe ich das richtig, dass ich in der robotx.txt die Endung php den SuMas verbieten muss um DC zu vermeiden?


Bin noch unschlüssig ob ich das einbauen soll, denn mein Forum wird auch mit den Standard Links (also php-Endungen ) ohne irgendwelchen Mod_Rewrite-Kram ganz gut indeziert....was nicht heißt, dass es nicht noch besser werden könnte...

S.

Verfasst: 06.06.2006 16:19
von mgutt
Du musst es ja nicht einbauen. Aber doppelter Content wäre das Resultat. Es ist ja nicht jede Seite verboten, aber wenn Du ein Thema über die viewtopic.php erreichst und über den titel-t234.htm, dann ist das nunmal doppelter Content.

Gruß

Verfasst: 06.06.2006 16:36
von Seether
Wie sieht es denn mit der Performance aus? Hier wurde (früher) oft angemerkt, dass das ganze umschreiben die Performance beeinträchtigen würde.


S.

Verfasst: 06.06.2006 19:44
von mgutt
Umschreiben frisst immer Performance. Solange das modrewrite Modul aktiv ist, muss man mit der Mehrlast leben. Da hilft nur ausprobieren.