ich würde in Prozent empfehlen weil die unterschiedlichen Browser Enginen rechnen anders bei Pixel.
Ganz einfach: https://www.google.de/search?q…ei=Fn2tU77QDYaH8QeLooGADQ
ich würde in Prozent empfehlen weil die unterschiedlichen Browser Enginen rechnen anders bei Pixel.
Ganz einfach: https://www.google.de/search?q…ei=Fn2tU77QDYaH8QeLooGADQ
Ne im ernst, eine DE-Domain ist zu teuer im Vergleich zur der Mehrheit von Anbietern.
Der Richtwert bei einer .de Domain pro Jahr beträgt 5 Euro.
Hallo liebe Community,
ich habe etwas überlegt ob ich meinen Fehler hier mal poste, auf der Hoffnung das einer meinen Denkfehler bemerkt.
Ich habe eine Session-Klasse geschrieben:
<?php
class Sessions extends NGL
{
public function __construct()
{
parent::__construct();
}
public function getSession()
{
$db = new Database();
if(isset($_SESSION['sessionid']))
{
$sessionid = $_SESSION['sessionid'];
} else {
$sessionid = 999;
}
$db->Query("SELECT * FROM `ucp_sessions` WHERE `ucp_sessions`.`sessionid`=:sessionid");
$db->bind(':sessionid', $sessionid);
$db->execute();
if($db->rowCount() == 0) {
//create
}
return $db->fetch();
}
public function ExistSession()
{
$db = new Database();
//self::$sessIP = $_SERVER['REMOTE_ADDR'];
if(isset($_SESSION['sessionid']))
{
$sessionid = $_SESSION['sessionid'];
} else {
$sessionid = 999;
}
$db->Query("SELECT * FROM `ucp_sessions` WHERE `ucp_sessions`.`sessionid`=:sessionid");
$db->bind(':sessionid', $sessionid);
$db->execute();
if($db->rowCount() == 0) {
return 0;
} else {
return 1;
}
}
//login wird nur abgerufen wenn update auf 1 ist
//bei false gilt der Besucher ist nicht eingeloggt, ebenso wird einlogguser mit dem richtigen wert wieder gegeben
public function createSession($update = 0, $login = false, $einloguser = NULL) //0 = Neu erstellen, 1= Bestehende Session überschreiben
{
//User als nicht eingeloggt deklarieren
self::$sessLogin = false;
//Username ist am Anfang NULL
self::$sessUser = NULL;
$_SESSION['user'] = self::$sessUser;
//Sessionid
//$newses = 'NGL_'.rand(111111, 99999999);
//Zeit wo Session erstellt wurde
self::$sessTime = time();
//Wann die Session abläuft (Üblicherweise nach 30 Min)
self::$sessExpire = time()+60*30;
//Zeit der letzten Aktion vom user
self::$sessLastAction = time();
//Auf welche Seie der Benutzer gerade ist
self::$sessPage = 'http://'.$_SERVER['HTTP_HOST'].'/'.$_SERVER['PHP_SELF'];
//GET oder POST Method
self::$sessRequest = $_SERVER['REQUEST_METHOD'];
//Browser vom benutzer
self::$sessUserAgent = $_SERVER["HTTP_USER_AGENT"];
//Anzahl der Seitenaufrufe
self::$seePageCount = 1;
//IP Adresse vom Benutzer
self::$sessIP = $_SERVER['REMOTE_ADDR'];
if($update == 0) {
$_SESSION['sessionid'] = rand(111111,99999999);
self::$newSessionID = $_SESSION['sessionid'];
try
{
if($this->ExistSession())
{
$this->createSession(1, false);
} else {
self::$Database->Query("INSERT INTO `samp`.`ucp_sessions` (`ucp_sessions`.`login`, `ucp_sessions`.`user`, `ucp_sessions`.`sessionid`, `ucp_sessions`.`time`, `ucp_sessions`.`expire`, `ucp_sessions`.`lastaction`, `ucp_sessions`.`page`, `ucp_sessions`.`requestmethod`, `ucp_sessions`.`useragent`, `ucp_sessions`.`pagecount`, `ucp_sessions`.`ip`) VALUES
(:login, :user, :sessionid, :time, :expire, :lastaction, :page, :requestmethod, :useragent, :pagecount, :ip)");
self::$Database->bind(':login', self::$sessLogin);
self::$Database->bind(':user', self::$sessUser);
self::$Database->bind(':sessionid', self::$newSessionID);
self::$Database->bind(':time', self::$sessTime);
self::$Database->bind(':expire', self::$sessExpire);
self::$Database->bind(':lastaction', self::$sessLastAction);
self::$Database->bind(':page', self::$sessPage);
self::$Database->bind(':requestmethod', self::$sessRequest);
self::$Database->bind(':useragent', self::$sessUserAgent);
self::$Database->bind(':pagecount', self::$seePageCount);
self::$Database->bind(':ip', self::$sessIP);
self::$Database->execute();
}
} catch (PDOException $e)
{
$this->Extest($e->getMessage(), $e->getCode(), $e->getLine(), $e->getFile(), $e->getTrace(), $e->getTraceAsString(), $e->getPrevious());
}
//self::$Database->errorInfo();
} elseif ($update==1) {
if($this->ExistSession()) {
if($login==false) {
$l = 0;
} elseif ($login==true)
{
$l = 1;
} else {
$l = NULL;
trigger_error("Der Parameter <i>login</i> darf in NGL::createSession() nur true oder false beinhalten", E_USER_ERROR);
}
self::$Database->Query("UPDATE `ucp_sessions` SET `ucp_sessions`.`login`=:login, `ucp_sessions`.`user`=:user, `ucp_sessions`.`expire`=:expire, `ucp_sessions`.`lastaction`=:lastaction, `ucp_sessions`.`page`=:page, `ucp_sessions`.`requestmethod`=:requestmethod, `ucp_sessions`.`useragent`=:useragent, `ucp_sessions`.`pagecount`=:pagecount WHERE `ucp_sessions`.`ip`=:ip)");
self::$Database->bind(':login', $l);
self::$Database->bind(':user', $einloguser);
self::$Database->bind(':sessionid', $this->getSession()->sessionid);
self::$Database->bind(':expire', self::$sessExpire);
self::$Database->bind(':lastaction', self::$sessLastAction);
self::$Database->bind(':page', self::$sessPage);
self::$Database->bind(':requestmethod', self::$sessRequest);
self::$Database->bind(':useragent', self::$sessUserAgent);
self::$Database->bind(':pagecount', $this->getSession()->pagecount+1);
self::$Database->bind(':ip', self::$sessIP);
self::$Database->execute();
} else {
$this->createSession(0, false);
}
} else {
trigger_error("Der Parameter <i>update</i> darf in NGL::createSession() nur true oder false beinhalten", E_USER_ERROR);
}
}
function __autoload()
{
parent::__autoload();
}
}
?>
Alles anzeigen
Das Script soll jeden Besucher eine Session verpassen....sofern der Besucher schon eine Session hat un diese schon in der Datenbank existiert, soll die bestehende Session überschrieben werden.
Aber es wird nach jeden Reload auf der Seite eine neue Session angelegt was es ja nicht darf.
Ich glaube ich habe einen Denkfehler drin.
Hoffentlich kann mir einer helfen.
Liebe Grüße
palwal
EDIT:
Das ganze wird so aufgerufen:
PHP ist kein PAWN! Da sollten Warnings niemals ignoriert werden weil auf jedenfall Sachen im Script nicht funktionieren werden was von Bedeutung sein könnten.
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/www/web267/html/cp/class/config/sprache.class.php:26) in /home/www/web267/html/cp/index.php on line 6
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/www/web267/html/cp/class/config/sprache.class.php:26) in /home/www/web267/html/cp/index.php on line 6
ZitatWarning:
session_start() [function.session-start]: Cannot send session cookie -
headers already sent by (output started at
/home/www/web267/html/cp/class/config/sprache.class.php:26) in
/home/www/web267/html/cp/index.php on line 6
ZitatWarning:
session_start() [function.session-start]: Cannot send session cache
limiter - headers already sent (output started at
/home/www/web267/html/cp/class/config/sprache.class.php:26) in
/home/www/web267/html/cp/index.php on line 6
ZitatWarning:
Cannot modify header information - headers already sent by (output
started at /home/www/web267/html/cp/class/config/sprache.class.php:26)
in /home/www/web267/html/cp/class/framework.class.php on line 68
Die Fehler deuten darauf hin, das Header-Informationen schon gesendet wurde. Sprich z.b du hast mitten im HTML header(); benutzt, dann entstehen solche Warnings. Überprüfen ob Header-Informationen schon gesendet wurden kannst du mit header_sent(). header() Script dürfen nur am Anfang der Seite geschrieben werden wenn überhaupt notwendig.
Warning: fopen(logs/ips.log) [function.fopen]: failed to open stream: Permission denied in /home/www/web267/html/cp/sites/login.php on line 38
Warning: fwrite() expects parameter 1 to be resource, boolean given in /home/www/web267/html/cp/sites/login.php on line 39
Warning: fclose() expects parameter 1 to be resource, boolean given in /home/www/web267/html/cp/sites/login.php on line 40
Bei diesem Warning schätze ich das die CHMOD Rechte nicht auf 777 sind, deswegen der Script keine Berechtigung hat diese Datei logs/ips.log zu öffnen. So Fehlermeldungen kannst du ebenfalls Abfangen....
Es wird geprüft ob die Datei geöffnet werden kann und gleichzeitig wenn fopen true ausgibt, öffnet es die datei.
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in /home/www/web267/html/cp/sites/home.php on line 28
Poste mal den Script von home.php mit Zeilen-Angabe hier...
Liebe Grüße
palwal
sudo ist ein Befehl führ Ubuntu aber nicht für Debian.
Welche Debian Versuion benutzt du?
Hallo,
bist du schon vergeben?
json_decode()
Soweit ich weiß wird das in eine Array wiedergegeben. Das kannst du mit print_r() sehen.
In dir steckt ein guter Designer. Leider hattest trotz mehrmaliger Zusagen kein Interesse mir was zu designern
Das heißt, jeder, der dieses Jahr wählen war, ist für euch schon unangebracht? Das würde ich vielleicht noch etwas anders formulieren :p
Nein so war es nicht gemeint, werde ich sofort ändern
Hallo liebe Community,
im folgenden Thread sind wir auf der Suche nach einem neuen Projektleiter.
Im Februar 2014 habe ich das Projekt mit lolcooper gegründet. Durch meine alte Adminaktivität im anderen Server, kamen einige zum Projekt die gerne bereit sind aktiv auf NGL zu Spielen und teil zu nehmen. Unser Server war leider noch nicht spielbereit. Wir hatten es erst mit dem GF My Virtual Dream versucht aber da es zu viele Bugs aufwieß die wir nicht alle beheben können weil sich es nicht lohnte, haben lolcooper und ich beschlossen einen Selfmade zu schreiben. Das Projekt ist ein Roleplay/Reallife Server der später so realitätsnah wie mögllich aufgebaut sein wird ohne den Spielspaß der anderen zu verderben.
Was ist schon vorhanden?
Der lolcooper hat überwiegend das meiste gesciptet, nun hat er leider keinerlei Interesse mehr an SAMP, was wir alle sehr bedauern.
Wie oben beschrieben wollen wir unser Server realitätsnah wie nur möglich aufbauen. Wie einige andere Server ist es nicht unser Ziel einen Deathmatsch Server daraus zu machen sondern nur was zur wahren Realität dazu gehört. Wir sind ein hoch engagiertes Team was nur darauf hinarbeitet, einen Server zur eröffnen, der zu gut es geht erfolgreich wird. Mir ist klar das so ein Server schwer zum Erfolg zu bringen ist, aber wir wollen uns der Herausforderung stellen.
Du als Projektleiter hast eine gewisse Verantwortung im Projekt, sorgst für einen Reibungslosen Ablauf und arbeitest stetig mit daran, den Server zur eröffnen und ihm zu gut es geht mit zum Erfolg bringst. Da wie oben beschrieben der lolcooper das meiste gescriptet hat und seine Systeme zum Teil nachgebessert werden müssen, wünsche ich mir einen Projektleiter der auch fähig ist aktiv zur Scripten und ich mich überwiegend um die Entwicklung/Programmierung vom UCP witmen kann. Auch die Einstellung/Degrationen/Entlassungen von Admins sowie der Leitung von Admins gehören zur den Aufgaben der Projektleitung. Der Projektleiter hat auch in jeder Hinsicht im Projekt mitspracherecht.
Die Bewerbung bitte ich hier in Breadfish per private Nachricht an mich schreiben. Ich erwarte nicht das ein großer Roman geschrieben wird sondern das man mich überzeugen kann. Wenn man mich üerzeugen konnte, so werde ich mich mit dem jenigen unterhalten und schauen ob wir eine Zusammenarbeit wagen. Das Alter der Bewerber ist mir erst einmal egal, für mich Zählt die Reife; es gibt auch z.B 14 Jährige die eine Reife des 16. Jährigen besitzen. Natürlich dürfen sich auch Mädels bewerben wenn sie die obigen Anforderungen erfüllen und der Aufgaben gewachsen sind.
Ich bedanke mich bei allen die sich für diese Stelle interessieren und natürlich auch an die, die diese Anzeige mit Interesse gelesen haben. Bei Fragen kann man mir gern auch eine private Nachricht zukommen lassen. Ich werde jede Nachricht beantworten. Sollten noch Punkte fehlen, werde ich die gerne hier in der Anzeige hinzufügen.
Liebe Grüße
palwal (Gründer und Projektleiter von Next Generation of Living)
//Anforderungstext abgeändert
Geil. Hätte mal ein Vorschlag...du schreibst mir ne PM mit den Zugangsdaten von gewinn3 und du hast auch diesen los
hmmm...mist hie4r muss man schnell sein ;/
Wie Devine_: gesagt habe ich dioe Zwei Ports freigeschaltet (Den Befehl habe ich aus Google)
Geht trotzdem noch nicht
Ich benutze Debian 7
Firewall eingehend 3306 freigegeben?
Nein in der Firewall hatte ich nichts eingestellt. wenn das niotwendig ist, kanst du mir sagen wie ich es mache?
Ja nach jeder Änderung in my.cnf
du musst dem User auch noch einstellen, Sprich das dieser vom Host '%' zugreifen kann. Geht am besten mit pma
Vielen Dank das du mir helfen möchtest.
Ich habe schon alle Benutzer für jeden Host definiert. Also daran kann es leider nicht mehr dran liegen
Verbindung fehlgeschlagen bekomme ich
Hallo liebe Community,
ich hätte da mal ein Problem. Ich habe einen neuen Server und möchte wieder die Datenbanken extern verfügbar machen was ich beim alten Server schon hinbekomen habe.
Jedoch funktioniert es nicht beim neuen.
Ich habe in der /etc/mysql/my.cnf schon
und auch die IP vom Server ect. versucht aber es funktioniert keinsterweise. Ich habe stundenlang in Google geschaut, überall steht das gleiche. Nur bei eines steht das die Firewall es auch blocken könnte. bin mir aber nicht sicher.
Sobald die Datenbank extern online ist, sollte auch das Connecten über telnet gehen, aber Verbindungsfehler; ja logisch.
Und die User-Rechte in phpmyadmin ist für jeden Host verfügbar.
Kann man mir schnellst möglich helfen?
Liebe Grüße
palwal
Hat man auch einen Objektlimit wenn man den Stramer benutzt? Wenn ja: welchen?