Hey, ich habe ein kleines Problem.
Ich habe neue Files aufgespielt und es läuft alles super.
Die Webseite läuft soweit auch perfekt, aber der Shop nicht.
Ich kann mir ein Item kaufen und es werden auch die Punkte abgezogen,
aber das Item wird/kann nicht versendet werden.
Kann mir einer sagen was das Problem sein könnte?
Edit: Ach ja das passierte erst vor 2-3 Tagen, das es nicht mehr ging...
Entferne das @ for dem odbc_exec (das @ unterdürckt Fehlermeldungen von Funktionen in PHP), kaufe erneut ein Item und schaue, ob es nun einen neuen Error-Log gibt.
Die PHP Errorlogs liegen bei Windows (IIS) standardmäßig im C:\Windows\Temp Ordner.
Meine Vermutung ist ein Fehler mit dem Dateformat.
Wenn das der Fall ist, eventuell mal in der xinc_config.php das Dateformat bearbeiten.
Dies hängt in der Regel von der Sprachversion des SQL Servers ab, auf dem die Datenbank liegt:
Deutsch
'dbDatetime' => 'Y-d-m H:i:s'
Englisch
'dbDatetime' => 'Y-m-d H:i:s'
Am einfachsten ist es aber, in Querys das date($_CONFIG['web_date_format']['dbDatetime']) durch GETDATE() zu ersetzen - der Server baut sich das Datumsformat dann selbst zusammen.
Dies hängt in der Regel von der Sprachversion des SQL Servers ab, auf dem die Datenbank liegt:
Deutsch
'dbDatetime' => 'Y-d-m H:i:s'
Englisch
'dbDatetime' => 'Y-m-d H:i:s'
Also hab das jetzt mal geändert und es geht Danke erstmal dafür
Hoffe aber das es nicht wieder nur für 1-2 Tage ist , weil hatte das zwischendurch auch schonmal das es ging und dann 2 Tage später wieder nicht
was aber leider immer noch nicht geht sind News oder Downloads eintragen. Kann nur alte vorhandene verändern
<?php if (!defined('access')) {die("Die gesuchte Ressource wurde entfernt oder umbenannt, oder sie steht vorübergehend nicht zur Verfügung.");} ?>
<?php
$strNewsQuery = '
SELECT TOP 15
N.[title],
C.[title] AS category,
C.[icon] AS icon,
N.[datetime],
N.[forenlink],
N.[text]
FROM [' . $_CONFIG['db_databases']['web'] . '].[dbo].[web_news] AS N
LEFT JOIN [' . $_CONFIG['db_databases']['web'] . '].[dbo].[web_newscategories] AS C ON C.ncatid = N.category
ORDER BY nid DESC
';
$dbNewsQuery = @odbc_exec($odbc_connect, $strNewsQuery);
<?php if (!defined('access')) {die("Die gesuchte Ressource wurde entfernt oder umbenannt, oder sie steht vorübergehend nicht zur Verfügung.");} ?>
<?php
$strNewsQuery = '
SELECT TOP 15
N.[title],
C.[title] AS category,
C.[icon] AS icon,
N.[datetime],
N.[forenlink],
N.[text]
FROM [' . $_CONFIG['db_databases']['web'] . '].[dbo].[web_news] AS N
LEFT JOIN [' . $_CONFIG['db_databases']['web'] . '].[dbo].[web_newscategories] AS C ON C.ncatid = N.category
ORDER BY nid DESC
';
$dbNewsQuery = @odbc_exec($odbc_connect, $strNewsQuery);
Hier eine Navigationsklasse für die Sapphire Flyff Seite, die ich eben für Lumex Flyff geschrieben habe. Hoffe sie ist hilfreich für den ein oder anderen...
Erstelle die PHP-Datei xinc_navigation.php.
PHP Code:
<?php if(!defined('access')) {die("The requested resource has been removed or renamed or is temporarily unavailable.");} ?>
<?php
/**
* Navigation Class by Icetea'
* Created 2015-03-01, Sublime Text 2
*/
class navigation {
public $link;
public function link($href, $tooltip, $title) {
$lower = strtolower($href);
Bisher wurde die Navigation in der index.php mit site_navigation.phtml eingebunden. Hier ändern wir den Typ auf PHP um und erstellen auch diese im includes Ordner.
Navigationslinks werden in dieser Klasse wie folgt erstellt:
PHP Code:
$nav->link('index.php?site=deineseite', 'Tooltip', 'Titel der Seite');
Wie oben bereits erwähnt haben wir in der index.php den Typ der Navigationsdatei an, somit müssen wir diese Datei auch erstellen. Diese sieht in der Sapphire Flyff Seite so aus:
PHP Code:
<?php if(!defined('access')) {die("Die gesuchte Ressource wurde entfernt oder umbenannt, oder sie steht vorübergehend nicht zur Verfügung.");}?>
<p class="navigation">
<?php
$nav->link('index.php?site=news', $_LANG['navigation_home_title'], $_LANG['navigation_home']);
$nav->link($_CONFIG['web_forum'], $_LANG['navigation_forum_title'], $_LANG['navigation_forum']);
$nav->link('index.php?site=download', $_LANG['navigation_download_title'], $_LANG['navigation_download']);
$nav->link('index.php?site=register', $_LANG['navigation_regist_title'], $_LANG['navigation_regist']);
$nav->link('index.php?site=rankings', $_LANG['navigation_ranking_title'], $_LANG['navigation_ranking']);
$nav->link('index.php?site=donate', $_LANG['navigation_donate_title'], $_LANG['navigation_donate']);
$nav->link('index.php?site=shop', $_LANG['navigation_shop_title'], $_LANG['navigation_shop']);
$nav->link('index.php?site=rules', $_LANG['navigation_rules_title'], $_LANG['navigation_rules']);
$nav->link('index.php?site=faqs', $_LANG['navigation_faqs_title'], $_LANG['navigation_faqs']);
$nav->link('index.php?site=staff', $_LANG['navigation_team_title'], $_LANG['navigation_team']);
$nav->link('index.php?site=ticketsystem', $_LANG['navigation_ticketsystem_title'], $_LANG['navigation_ticketsystem']);
?>
</p>
Selbstverständlich müssen wir auch die Klasse selbst einbinden. Hierzu öffnen wir nochmal die index.php und binden diese im ersten PHP-Tag unter session_start(); wie folgt ein:
PHP Code:
require_once('includes/xinc_navigation.php');
$nav = new navigation;
Falls ich nichts vergessen haben sollte, wäre es das denke ich.
Kleiner Votescript-fix bei dem der Vote Text falsch ausgegeben wurde.
Vorher:
Nachher:
PHP Code:
<?php if (!defined('access')) {die("Die gesuchte Ressource wurde entfernt oder umbenannt, oder sie steht vorübergehend nicht zur Verfügung.");} ?> <?php if ($_CONFIG['vote_enabled'] AND count($_CONFIG['vote_toplists']) > 0) { foreach ($_CONFIG['vote_toplists'] as $intTopListID => $mixedTopListArray) {
if(isset($_POST['submitVote'.$intTopListID])) {
$strVoteErrorArray = array(); $intRecheckIPVotingTime = time() - $mixedTopListArray['timeLimit']; $intTimestampOfLastVoteBeforeVote = @odbc_exec($odbc_connect, 'SELECT TOP 1 [timestamp] FROM [' . $_CONFIG['db_databases']['web'] . '].[dbo].[LOG_VOTE] WHERE [ip] = \'' . $_SERVER['REMOTE_ADDR'] . '\' AND [account] = \'' . cleanSqlInput($_SESSION['user']) . '\' AND [toplist] = ' . $intTopListID . ' AND [timestamp] > ' . $intRecheckIPVotingTime . ' ORDER BY [id] DESC'); $intRecheckIP = @odbc_num_rows($intTimestampOfLastVoteBeforeVote);
Viel Spaß damit. Download der en.php ist im Anhang dieses Posts zu finden.
Ich habe bei dieser Version der SF-Webseite das Multi-Language Script von Tim fertiggestellt, so dass man dieses auch nutzen kann.
Also es wird mit einem GET-Parameter abgefragt, nicht mit einem POST-Parameter, sowie Tim das eigentlich damals vorhatte, heute läuft es bei Forsaken ebenfalls über einen GET-Parameter.
In die xinc_footer.php, oder wo ihr die Flaggen hinhaben wollt fügen wir das hier ein:
Nachdem wir den Wert von $lang bestimmt haben nutzen wir ein switch Konstrukt, wobei bei 2 Werten ('en' => Englisch, 'de' => Deutsch) auch ein If-else Konstrukt vollkommen ausgereicht hätte. Ich habe switch() genutzt weil man hier nun eigentlich beliebig viele Sprachen einfach hinzufügen kann. Kann ja jeder für sich abändern, falls es ihn dermaßen stört. Wenn dann der Wert von $file durch unseren switch() bestimmt ist, wird das Script die erforderliche / angegebene Datei einbinden und die $_LANG['sample'] Strings dort auslesen. Ebenso offensichtlich ist, dass ich Sessions nutze um den Wert von $lang zu registrieren. Auf diese Art & Weise können dann die Besucher der Seite auf der ganzen Webseite handeln und finden den Inhalt eurer Seite in ihrer gewählten Sprache. Zusätlich nutze ich hier auch noch Cookies, um die ausgewählte Sprache für 30 Tage auf dem PC des Besuchers zu speichern. Die Cookie-"formel" kann ja jeder für sich abändern, falls jemand möchte, dass dieser Cookie länger als 30 Tage gespeichert wird. Dieses System wird auch durch einen "Mini-Fix" in IE6 funktionieren. Viel Spaß!
switch($lang) {
case 'en':
$file = 'file_en.php';
break;
case 'de':
$file = 'file_de.php';
break;
default:
$file = 'standard file.php';
}
Habe es mittlerweile selbst anders gelöst. Geht auch so ähnlich hab das jetzt schnell geschrieben. Don't copy & paste. Schreibe demnächst einfach mal ein komplett neues für die Sapphire Seite die dann auch jeder nutzen kann.
Liebe Grüße,
Icetea'
Wie wäre es wenn du mal den Support der Sapphire Website übernimmst, weil du es eindeutig besser kannst ^^
To those who are well not in europe who intend to use this please be aware that you have to update your PHP timezone with a country in europe via php.ini. Otherwise you'll encounter tons of issues with time stamps and dates/time.
This only needs to happen if your server is not in europe and(or) your doing testing locally at home while not in europe.
Code:
[COLOR="Magenta"][Date][/COLOR]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Stockholm
; http://php.net/date.default-latitude
date.default_latitude = 69,0598
; http://php.net/date.default-longitude
date.default_longitude = 20,5473
; http://php.net/date.sunrise-zenith
date.sunrise_zenith = 90.583333
; http://php.net/date.sunset-zenith
date.sunset_zenith = 90.583333
Will work fine, be sure to reboot php after. If you don't want to do that, then your only other solution is to convert the time/date via the site itself.
To those who are well not in europe who intend to use this please be aware that you have to update your PHP timezone with a country in europe via php.ini. Otherwise you'll encounter tons of issues with time stamps and dates/time.
This only needs to happen if your server is not in europe and(or) your doing testing locally at home while not in europe.
Code:
[COLOR="Magenta"][Date][/COLOR]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Stockholm
; http://php.net/date.default-latitude
date.default_latitude = 69,0598
; http://php.net/date.default-longitude
date.default_longitude = 20,5473
; http://php.net/date.sunrise-zenith
date.sunrise_zenith = 90.583333
; http://php.net/date.sunset-zenith
date.sunset_zenith = 90.583333
Will work fine, be sure to reboot php after. If you don't want to do that, then your only other solution is to convert the time/date via the site itself.
You know that you can change your timezone in xinc_config.php?
PHP uses a function that can override the php.ini configuration.
[Release] Sapphire Flyff PvP 04/06/2012 - Flyff PServer Guides & Releases - 14 Replies Heey !
Hier Release ich die Sapphire Flyff PvP :
- Ich habe Sie gemappt.
- Habe zustimmung von Marvin
- Es sind keine v18/19/cFlyff Models drin