kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: CSS ausgelagert +Meta-Tags

    geschrieben von gamesite

    webfreclan schrieb:
    Du könntest allerdings die CSS Datei zu einer PHP Datei machen und dann das Caching mittels PHP regeln.
    Ist also die einzige Möglichkeit.
    Ok, danke.

    Ich hab nur mal irgendwo gelesen, man soll http-header und meta-tags gleichzeitig benutzen, damit alle Browser klarkommen.
    Bei Css funktionieren also nur http-header.


    hackyourlife schrieb:
    Auch PHP braucht es hierfür nicht. Eine
    .htaccess
    -Datei mit entsprechenden Anweisungen reicht völlig aus. Google hat dazu gerade diese Seite ausgespuckt.
    Oft hab ich sowieso schon php auf der Seite, dann gehen die header einfach mit.
  • in: CSS ausgelagert +Meta-Tags

    geschrieben von gamesite

    Hallo,

    wenn ich CSS auslagere, kurzes Beispiel:
    <html>
      <head>
        <link href='design.css' type='text/css' rel='stylesheet'>
      </head>
      <body>
        <h1>&Uuml;berschrift</h1>
        <p>Absatz</p>
      </body>
    </html>

    design.css:
    h1 {
      color:blue;
    }
    p {
      color:red;
    }
    (ungetestet)

    Gibt es jetzt eine Möglichkeit in der css-Datei meta-tags zu definieren, die das Caching regeln?

    Ziel ist z.B. dass die css-Datei im Cache landet, die html-Datei aber nicht.
  • in: Fehler werden nicht angezeigt

    geschrieben von gamesite

    Versuche es mal mit diesem Beispiel:

    <?php
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
    $test=array();
    echo $test["nichtda"];
    //echo "ok
    keinefunktion();
    ?>

    Das ergibt bei mir auf Lima-City:
    Notice: Undefined index: nichtda in /home/webpages/lima-city/gamesite/html/-***-/fehler.php on line 5

    Fatal error: Call to undefined function keinefunktion() in /home/webpages/lima-city/gamesite/html/-***-/fehler.php on line 7
    Und so soll es auch sein.

    Also:
    zuerst alle Fehler melden (Zeile2) und dann auch ausgeben. (Zeile3)

    Es gibt aber tatsächlich Fälle, in denen trotzdem eine weiße Seite erscheint, z.B. wenn ich die Kommentarzeichen in Zeile 6 entferne.
  • in: mysql_fetch_row für prepared statements

    geschrieben von gamesite

    Auf http://www.askingbox.de/info/php-mysql-ergebnis-in-array-speichern steht ganz oben dieses Beispiel:
    $erg = mysql_query("SELECT name, ort, land FROM tab WHERE id=1");
    $arr = mysql_fetch_row($erg);
     
    echo $arr[0];  //name
    echo $arr[1];  //ort
    echo $arr[2];  //land
    Das möchte ich jetzt umwandeln zu prepared statements, also so, dass ich am Ende wieder die drei echos, möglichst mit identischer Syntax nutzen kann.

    Hier ein Anfang:
    $db=new mysqli(/*usw.*/);
    $stmt=$db->prepare("SELECT name, ort, land FROM tab WHERE id=?");
    $stmt->bind_param("i",$id);
    $stmt->bind_result(/* und dann? */);
    
    $id=1;
    $stmt->execute();
    $stmt->fetch(); // Oder irgendwie anders?
    
    // Und eben die drei echos
    Was muss ich hier alles ändern, hinzufügen, entfernen?
  • in: Hash in DB - welcher Datentyp?

    geschrieben von gamesite

    Danke für den Link.
    Es geht also mit den MySQL-Befehlen HEX und UNHEX.

    Bei HEX bekommt man Großbuchstaben zurück, aber da hilft die PHP-Funktion strtolower() weiter.
  • in: Hash in DB - welcher Datentyp?

    geschrieben von gamesite

    Hallo,

    ich möchte den sha256 eines Passworts in der DB speichern.
    Was ist der beste Datentyp dafür, und wie wendet man ihn an?

    Die einfachste Möglichkeit ist natürlich varchar(64), und dann die 64 hex-Ziffern rein.
    Allerdings ist das etwas unschön, denn dann werden 64 byte gespeichert, wobei ein sha256-Hash im Idealfall nur 32 byte braucht.

    Ist es möglich den Speicherbedarf auf 32 byte zu reduzieren, und wenn ja, was muss ich dafür alles tun?
    - Datentyp in MySQL
    - Verwendung in PHP
  • in: db connection prüfen

    geschrieben von gamesite

    Danke, das hab ich gesucht.
    Vor den prepared Statements konnte man einfach die Variable prüfen.
    Hier ist also die Funktion notwendig.
  • in: db connection prüfen

    geschrieben von gamesite

    Es geht um prepared Statements.
    $db=new mysqli('mysql.lima-city.de','USER******','**','db_******_**');
    $stmt=$db->prepare('SELECT * FROM ... usw.');
    $stmt->execute();
    An welcher Stelle und wie kann ich prüfen, ob die Verbindung zur DB erfolgreich war?
    Also möglichst bevor es Fehler, oder auch nur 'Notice' gibt.
  • in: Was haltet Ihr von bitcoins

    geschrieben von gamesite

    Ich vergleiche mal die Bitcoins mit Gold:
    Sowohl bei Bitcoins als auch bei Gold ist ein hoher Aufwand nötig, um sie zu beschaffen.
    -Bei Gold: Minenarbeiter, Maschinen, ...
    -Bei Bitcoins: Schnelle Rechner, Strom, ...

    Beide gibt es nur begrenzt auf der Erde.
    -Gold kann nicht chemisch produziert werden und ist eben nur begrenzt verfügbar.
    -Bitcoins sind aufgrund ihrer Technik auf 21 Mio begrenzt.

    Ein Unterschied:
    -Bitcoins habe keinen direkten Nutzen.
    -Gold kann in Form von Schmuck am Körper getragen werden. Dabei ist es etwas besonderes, denn es glänzt und rostet nicht.

    Soll dieser eine Unterschied der Untergang von Bitcoins sein?
    Ich bezweifle es.
    Bitcoins werden vermutlich noch lange an Wert behalten.
  • in: Einwegkamera Elektroschocker

    geschrieben von gamesite

    fatfox schrieb:
    ...sonst würde man für jedes Gerät an einer entsprechenden 230V Steckdose einen "Waffenschein" benötigen denn da kann die momentane Spannung im Fehlerfall bis zu 325V betragen.
    Naja, da sind auch alle Metallteile, die unter Spannung stehen gut isoliert. Außerdem gibt es Sicherheitsmaßnahmen, wie Schutzleiter, FI-Schutzschalter, ...

    Das ist bei dem Elektroschocker aus der Kamera nicht der Fall.

    Philip: Sei immer vorsichtig mit dem Ding.
    Allein die Tatsache, dass du schon Stromschläge bekommen hast, ohne zu wissen ob sie gefählich sind, weist schon darauf hin, dass du nicht vorsichtig genug warst.
  • in: argh , immer diese Cookies!

    geschrieben von gamesite

    Du speicherst den Hash des Passworts im Cookie, und vergleichst ihn mit dem Eintrag der Datenbank?
    Wieso ist es dann überhaupt Hash-verschlüsselt? Das geht am Sinn vorbei.

    Normalerweise speichert man alle Daten in einer Session.
    Bzw. in einer Session reicht es, zu speichern, dass der User überhaupt eingeloggt ist. Man kann sie nämlich nicht fälschen.
    Man kann sie höchstens klauen, aber das ist ein anderes Thema.
  • in: Botlogger - IP Sperren

    geschrieben von gamesite

    Mit
    $_SERVER['REMOTE_ADDR']

    bekommst du die IP des Benutzers.

    Dann einfach beim Eintrag in das Gästebuch die IP mitspeichern, aber nicht anzeigen.

    Du kannst dann eine extra Blacklist mit den Spammer-IPs erstellen, die bei jedem neuen Gästebucheintrag durchsucht wird.
    Ist die IP dabei, einfach nicht speichern.

    Tipp: Speichere zusätzlich ein sperr-Cookie.
    Das verwirrt den Spammer dann noch mehr.
  • in: Design verschwindet

    geschrieben von gamesite

    pcw schrieb:
    Dann müsstest du überall 'schwarz' anklicken. Ich hab aber keinen User verzeichnet, der das getan hat.


    Hab ich doch, nun sogar noch ein 2. mal :biggrin:
    Ok, jetzt stimmt's. Ich hab es eingetragen.

    pcw schrieb:
    Lade doch mal die "normale" Datei hoch bzw. deaktiviere die htaccess.
    Gut, mach ich:
    Test durchführen: http://www.gamesite.lima-city.de/csstestphp/
    Ergebnisse: http://www.gamesite.lima-city.de/csstestphp/statistik.html
    Quellcode ansehen (es wird nichts gespeichert): http://www.gamesite.lima-city.de/csstestphp/?blocked=1

    Alle Dateien heißen jetzt *.php
    Die Ergebnisse sind unabhängig von den anderen.
  • in: Design verschwindet

    geschrieben von gamesite

    pcw schrieb:
    Bei mir funktioniert dein CSS-Test nicht... weder noch.... alles schwarz.
    Dann müsstest du überall 'schwarz' anklicken. Ich hab aber keinen User verzeichnet, der das getan hat.

    pcw schrieb:
    Was passiert denn, wenn du den htaccess Zauber mal weglässt und die Seite ganz normal als *.php aufrufst?
    Bei meinen beiden Browsern (immernoch Firefox 21.0 und IE 8.0) keinen Unterschied.
  • in: Design verschwindet

    geschrieben von gamesite

    Ok, ich hab nen CSS-Test geschrieben:
    http://www.gamesite.lima-city.de/csstest/

    Die Ergebnisse gibt es unter http://www.gamesite.lima-city.de/csstest/statistik.html

    Wer nur den Quellcode anschauen möchte, bitte http://www.gamesite.lima-city.de/csstest/?blocked=1 aufrufen.
    Dann werden keine Daten gespeichert.

    Der Quellcode sollte etwas übersichtlicher sein, als im vorigen Beispiel.
  • in: Design verschwindet

    geschrieben von gamesite

    @hcms
    Ich habs jetzt geändert.
    Allerdings sehe ich im Firefox keinen Unterschied.
    Wie auch? Ich hab doch dadurch nur den relativen Pfad in einen absoluten verwandelt, oder?
  • in: Wie gross kann/sollte Homepage sein?

    geschrieben von gamesite

    hbss schrieb:
    Wie lange läd eine langsame Leitung wie Handy oder Modem

    500kb
    oder
    1 MB?
    Modem hat etwa 64 kbit/s, also (geteilt durch 8) 8 kByte/s.
    500 kb benötigen etwa 1 Min,
    1 Mb demnach 2 Min.
  • in: Design verschwindet

    geschrieben von gamesite

    Also
    <link href="design.css" type="text/css" rel="stylesheet" />
    ersetzen durch
    <link href="css/design.css" type="text/css" rel="stylesheet" />

    Dann funktioniert das Design garnicht mehr.

    PS: Ja, stimmt ich hab PHP versteckt.
    Das werde ich spätestens bei der Auswertung des Login-Formulars auch brauchen. :wink:
  • in: mehrere SQL Wert in einer Variabel

    geschrieben von gamesite

    Stehen diese "mehreren Werte" in einer Zeile oder in einer Spalte?
  • in: Design verschwindet

    geschrieben von gamesite

    http://www.gamesite.lima-city.de/wurzelimperium/

    Ich hab die Seite ein bisschen mit CSS gestaltet.
    Die mittige Ausrichtung sowie die Farben und Ränder werden durch die externe Datei 'design.css' gesteuert.

    Wenn man unter Login beliebige Daten eingibt und auf den Button klickt, ist plötzlich das Design weg. (Firefox 21.0)
    Bie IE 8.0 ist alles normal.

    Dabei reagiert die Seite bis jetzt überhaupt nicht auf eingegebene Daten. Es wird einfach der Inhalt geschickt, egal ob man sie in der Navigation auswählt, oder versucht sich einzuloggen.
    Wo also bleibt das Design?
  • in: Cache für bestimmte Zeit

    geschrieben von gamesite

    Das meta-Tag hat nicht geklappt.
    Alles unverändert.

    Den Cache habe ich zwar nicht geleert, aber ich konnte widerlegen, dass noch alte Seiten drin sind.
    Ich hab beim einfügen des meta-Tags etwas anderes auf der Seite verändert und jetzt zeigt er mir nur noch den Neuen Stand an.
    -> also keine alte Seite.

    Ich habe aber festgestellt:
    nach etwa 6 min wird die Seite doch neu geladen.
    Aber wieso erst nach 6 min? :confused:

    thwbm schrieb:
    Der IE macht was ER will und nicht, was DU willst.
    Das stimmt.
  • in: Cache für bestimmte Zeit

    geschrieben von gamesite

    ich möchte, dass mein Browser bestimmte Seiten für eine feste Zeit im Cache behält.
    Im Beispiel 1 Min.
    <?php
    sleep(5);
    header("Cache-Control: public, max-age:60");
    //Und der Inhalt der Seite
    ?>

    Aber wenn ich die Seite nach 2 Min ein zweites Mal anklicke, ist der Inhalt sofort da.
    Sie kommt also noch immer aus dem Cache, denn eine neue Anfrage würde mindestens 5 sec. brauchen (wegen sleep).

    Wo also ist der Fehler?
    Ich nutze IE 8.0
  • in: 504 bei Long Polling

    geschrieben von gamesite

    20 Sekunden?
    Ich hab ein Testprogramm geschrieben, das auf 2 Stunden festgesetzt ist.
    Es läuft gerade auf dem Server und schreibt nach jeder vollen Minute einen Eintrag in die Datenbank.
    6 Einträge stehen schon drin = 6 Min.
    Oder meinst du 20 Min.?
  • in: 504 bei Long Polling

    geschrieben von gamesite

    Einfacher, kurzer PHP-Code:
    <?php
    sleep(120);
    echo "Inhalt.";
    ?>
    Letztendlich möchte ich auf Long Polling hinaus.
    Das heißt, der Browser sendet eine Anfrage und der Server wartet mit der Antwort, bis er eine hat.

    Das Problem ist jetzt, dass ich nach etwa 50 sec. den Error bekomme:
    504 Gateway Time-out
    The server didn't respond in time.

    Irgendein Proxy denkt also, es käme nie mehr eine Antwort und macht die Verbindung zu.
    Kann man z.B. Serverseitig um "Geduld" bitten, oder gibt es eine andere Möglichkeiten, diesen Fehler zu verhindern?
  • in: .htaccess no Cache header

    geschrieben von gamesite

    Probiere doch einfach beide Möglichkeiten, dann weißt du es ganz sicher.
    Ich vermute aber, dass beides funktioniert. Du kannst dir dann aussuchen, was schöner ist. ;-)
  • in: Mysql - Gleichzeitiger Zugriff

    geschrieben von gamesite

    Skript sagt:
    Die Bearbeitung dauerte: 0.0148391723633 Sekunden

    Und jetzt nochmal zu meiner Frage:
    In welchem Takt ist es dann sinnvoll, zu prüfen, ob die Zeile wieder frei ist?
  • in: Mysql - Gleichzeitiger Zugriff

    geschrieben von gamesite

    Gut, ich würde es einfach kurz später nochmal versuchen, also mit usleep().

    Angenommen, mein Programm braucht 4000 Mikrosekunden von sperren bis entsperren.
    In welchem Takt ist es dann sinnvoll nachzuprüfen, ob die Zeile schon frei ist?
  • in: Mysql - Gleichzeitiger Zugriff

    geschrieben von gamesite

    hackyourlife schrieb:
    Du könntest ein Lock bauen...
    OK, und was macht man, wenn die Zeile gerade gesperrt ist?
    -Warten?
    -Fehlermeldung?
  • in: Mysql - Gleichzeitiger Zugriff

    geschrieben von gamesite

    Naja, das Problem ist, dass das Ergebnis des vorherigen Skripts wieder der Ausgangswert für das nächste Skript ist.
    Und das Skript soll nicht nur diese eine Zelle anpassen, sondern auch andere Aufgaben mit den beiden Zahlen erledigen.
    Da ist es eben wichtig, dass sie schön nacheinander durchgeführt werden.
    Die exakte Reihenfolge spielt weniger eine Rolle, aber der Server soll sich eben entscheiden und dann seine Wahl strikt einhalten, und nicht irgendwas dazwischen machen.

    lg
  • in: Mysql - Gleichzeitiger Zugriff

    geschrieben von gamesite

    Hallo,

    ich hab in Mysql eine Tabelle, die eigentlich nur eine Zelle besitzt.
    Zuerst wird der Inhalt ausgelesen.
    Dann geschehen mit dem Wert komplizierte Berechnungen mit Schleifen usw. Diese sind hier stark vereinfacht (nur +7).
    Als Letztes wird das Ergebnis wieder in die Tabelle geschrieben.

    Ok, hier der Code:
    <?php
    //Datenbankverbindung, Tabellenauswahl
    
    $sql='SELECT nummer FROM zaehlen;';
    $erg=mysql_query($sql);
    $zeile=mysql_fetch_array($erg,MYSQL_ASSOC);
    $nummer1=$zeile['nummer'];
    
    //Berechnungen
    $nummer2=$nummer1+7;
    
    $sql="UPDATE zaehlen SET nummer=$nummer2;";
    mysql_query($sql);
    echo "Wert von $nummer1 auf $nummer2 geändert.";
    ?>


    Was passiert jetzt, wenn zwei Leute (nahezu) gleichzeitig die Seite aufrufen?
    Folgendes Szenario:
    Skript 1 liest die Zahl 0.
    Skript 2 liest die Zahl 0.
    Skript 1 schreibt die Zahl 7.
    Skript 2 schriebt die Zahl 7.
    Letztendlich wäre die Zahl dann nur einmal erhöht worden, obwohl die Seite zweimal aufgerufen wurde.

    Auch wenn es unwahrscheinlich ist, ist dieses Szenario realistisch?
    Und wenn ja, wie kann man es besser machen?

    Ich hoffe, es kann jemand helfen.
  • in: Statuscode 301 ausschalten

    geschrieben von gamesite

    fatfreddy schrieb:
    CheckSpelling off


    Das dürfte aber, wie gesagt, eigentlich nicht der Grund sein.

    Naja, auf jeden Fall funktioniert es damit, also trotzdem mal Danke.

    lg
  • in: Statuscode 301 ausschalten

    geschrieben von gamesite

    fatfreddy schrieb:
    Du hast vermutlich in irgendeiner .htaccess (eventuell auch in einem übergeordneten Ordner !) noch eine rewrite-Rul, die diese Weiterleitung produziert. Prüfe das mal.

    Nein, ich hab nur
    AddType application/x-httpd-php .html

    drin stehen, damit html mit php geparst wird. Das ist alles.

    Kann man SpellChecking mithilfe der .htaccess auf off stellen?
  • in: Statuscode 301 ausschalten

    geschrieben von gamesite

    ja, das mit PHP weiß ich.
    Das Problem ist aber der Statuscode 301 bei der Seite versuch.html, die garnicht existiert. Da soll 404 kommen.
  • in: Statuscode 301 ausschalten

    geschrieben von gamesite

    Hallo Forum,

    Das Problem:
    Ich hab auf meinem Server eine Seite z.B. http://www.gamesite.lima-city.de/versuch2.html
    Wenn ich jetzt im Browser http://www.gamesite.lima-city.de/versuch.html (ohne die zwei) aufrufe, werde ich automatisch zur richtigen Seite weitergeleitet. Dies geschieht durch den Statuscode 301 Moved Permanently. Der Server nennt dem Browser dabei die korrekte Adresse.

    Mein Ziel ist es, dass ich die Dateien in meinem Verzeichnis so geschützt ablegen kann, wie auf dem Download-Server (wer die korrekte Adresse nicht kennt, kann die Datei nicht aufrufen).
    Dazu sollte der Statuscode 301 verschwinden und stattdessen der 404 Not Found erscheinen. Kann man das irgendwie einstellen?

    lg
  • in: Include Datei aus Überverzeichnis geht nicht

    geschrieben von gamesite

    Die Datei, in der das "include" steht, befindet sich in einem Unterverzeichnis.
    Die Datei, die eingebunden wird, im Hauptverzeichnis.
    Deshalb wundert mich, dass es nicht funktioniert.

    lg

    Edit:
    Ich hab viel probiert und hatte noch etwas Ärger mit dem Browsercache. Die Ursache hab ich jetzt begriffen.
    Trotzdem wundert mich folgendes:

    in meinem Hauptverzeichnis liegt die Datei, die eingebunden wird.
    im Hauptverzeichnis liegt ein Unterordner.
    auf diesen Unterordner zeigt meine Domain.
    im Unterordner liegt die PHP-Datei


    wieso kann die PHP-Datei nicht auf die andere Datei zugreifen, obwohl der Bereich noch mir gehört?

    lg
  • in: Include Datei aus Überverzeichnis geht nicht

    geschrieben von gamesite

    Hi Forum,

    es geht um diesen Code:
    include("./include.php");
    include("include.php");

    beide Varianten sind möglich.

    Wenn ich allerdings diesen Code benutze:
    include("../include.php");
    ...und die Datei ins übergeordnete Verzeichnis verschiebe, funktioniert es nicht mehr. Ist das normal?

    lg

Login zum Webhosting ohne Werbung!