Peter Pan: + MySQl: Mehrer Fragen

Hallo!

Ich lerne gerade PHP + MySQL. Hierzu habe ich einige Fragen:

1.) Ist es möglich auf eine MySQL - Datenbank zuzugreifen, die nicht auf dem gleichen Server liegt. Das Problem bestht nämlich darin, dass mein (Kostnpflichtiger) Webspace zwar PHP-Unterstützung mit sich bringt, aber eben keine MySQL. Nun hätte ich die Idee, mich auf funpic.de zu registrieren, um dann eine MySQL Datenbank zu haben, aber kann ich dann darauf von meiner Seite, z.B. xy.de gehostet von 1&1 zugreifen?

2.) Als Tutorial für PHP nutze ich http://tut.php-q.net und da wird ja ein Beispiel aufgezeigt, wie man div-Layer frames ersetzen kann. Ist das denn eine gute Sache, sprich macht man sowas auch in der Praxis und ist es guter Stil?

MfG,

Peter Pan

  1. Hallo!

    Nun hätte ich die Idee, mich auf funpic.de zu registrieren, um dann eine MySQL Datenbank zu haben, aber kann ich dann darauf von meiner Seite, z.B. xy.de gehostet von 1&1 zugreifen?

    Du kannst von 1&1 drauf zu greifen, wenn "funpic.de" den Zugriff auf die MySQL von extern zuläst.

    MfG, André Laugks

  2. 1.) Ist es möglich auf eine MySQL - Datenbank zuzugreifen, die nicht auf dem gleichen Server liegt.

    Ja, ist auch deutlich beschrieben in der PHP-Anleitung: mysql_connect(), http://www.php.net/manual/de/function.mysql-connect.php. Voraussetzung ist allerdings, dass der MySQL-Server Verbindungen von außen erlaubt - exakt hier könnte Dein Vorhaben scheitern. Vielleicht solltest Du einfach einen Euro drauflegen und Webspace mit Datenbank mieten.

    2.) Als Tutorial für PHP nutze ich http://tut.php-q.net und da wird ja ein Beispiel aufgezeigt, wie man div-Layer frames ersetzen kann. Ist das denn eine gute Sache, sprich macht man sowas auch in der Praxis und ist es guter Stil?

    Das kommt darauf an, wie Du <frame> bzw. <div> einsetzt. Ersteres hat gelegentlich durchaus seine Existenzberechtigung und der Einsatz von letzterem kann die Angelegenheit durchaus auch nur verschlimmbessern.

    Die Leute, die Deine PHP-Einführung geschrieben haben, scheinen in der Hinsicht aber durchaus auf dem Pfade der Erleuchtung zu wandeln, auch wenn <span class="hervorheben">komplett</span> natürlich nicht gern gesehen ist ;) <em>, <strong>, <code> und dergleichen sind immer noch die HTML-Elemente mit höherem Wert als <span> (und <div>).
    Und noch'n Tipp: http://www.csszengarden.com/.

    Gruß,
      soenk.e

    1. Hallo!

      Leider unterstützen die funpic-MySQL Datenbanken dies leider nicht, wie ich soeben feststellen habe müssen. Kennt jemand vielleicht einen Freeprovider mit dem so etwas möglich ist? Ein Upgrade auf MySQL-Datenbaken würde mich 5 mehr pro Monat kosten, für einen Schüler ein großes Hindernis :-(

      zu 2) Ist von dem beschriebenen Vorgehen also abzuraten oder ist es doch eine sinnvolle Art u. Weise Websiten zu strukturieren?

      MfG,
      Peter Pan

      1. Hallo!

        Kennt jemand vielleicht einen Freeprovider mit dem so etwas möglich ist? Ein Upgrade auf MySQL-Datenbaken würde mich 5 mehr pro Monat kosten, für einen Schüler ein großes Hindernis :-(

        Ich kenne einen der Relativ günstig ist und sogar im kleinsten paket schon PHP und MySQL anbietet.
        Preis: 2,99 EURO/Monat inkl. 1 .de Domain.

        Wenn Deine Homepage keine rechtswidrigen Inhalte hat etc. kannste da bestimmt gehostet werden. Und 2,99 sollten für das Paket echt in Ordnung gehen.

        Ich weiss nicht ob ich hier dafür werben darf, wenn nicht bitte ich um Verzeihung und Zensur ...

        http://www.lewejohann.de

        MfG Thrillseeker

      2. Kennt jemand vielleicht einen Freeprovider mit dem so etwas möglich ist?

        Sehr fraglich. Bei einer Datenbank kann man keine Werbung anzeigen, wie sollen die das finanzieren?

        Ein Upgrade auf MySQL-Datenbaken würde mich 5 mehr pro Monat kosten, für einen Schüler ein großes Hindernis :-(

        a) Wechsle den Hoster (ok, billiger muss nicht besser sein).
        b) Versuche es mit einer anderen Datenhaltung, zum Beispiel eine CSV-Datei (Comma Separated Values = Textdatei, ein Datensatz pro Zeile, die Felder durch Kommas, Semikolla oder dergleichen getrennt) oder eine XML-Datei. Solange Du nicht Tausende von Datensätzen speichern willst oder die Datenbank viele Zugriffe gleichzeitig aushalten muss, fährst Du auch mit diesen einfacheren Methoden ganz gut. Sowohl für CSV als auch für XML bietet PHP Funktionen an, wobei CSV einfacher zu verarbeiten ist (nur eine Funktion, http://www.php.net/manual/de/function.fgetcsv.php), XML hingegen möglicherweise flexibler (http://www.php.net/manual/de/ref.xml.php).

        Für größere Datenmengen oder allgemein schnelleren Zugriff auf bestimmte Elemente bieten sich auch die dba-Funktionen (http://www.php.net/manual/de/ref.dba.php) an, die auf indizierte Datensätze zugreifen.

        zu 2) Ist von dem beschriebenen Vorgehen also abzuraten oder ist es doch eine sinnvolle Art u. Weise Websiten zu strukturieren?

        Im Allgemeinen ist es vorzuziehen, Tabellen- oder Framelayout rauszuschmeissen und stattdessen auf CSS zu setzen. Betonung liegt hier wohlgemerkt auf CSS, nicht auf <div> alleine. Der Witz an der Sache ist eigentlich, die HTML-Datei der Bedeutung nach maschinenlesbar zu machen. Eine Überschrift befindet sich zum Beispiel nicht in <font>, <span> oder <div> (alles keine beschreibenden Elemente), sondern im für Überschriften vorgesehenen <h1>-Element (besagt: Hier kommt eine Überschrift!). Es wird also der Inhalt (HTML) von seinem Aussehen (CSS) getrennt.

        Die Vorteile sind in erster Linie besagte Maschinenlesbarkeit und obendrein werden die HTML-Dateien kleiner und übersichtlicher, weil der ganze HTML-Layoutkram rausfliegt.

        Gruß,
          soenk.e

        1. Hi soenk.e!

          Die Trennung von Inhalt und Layout ist klar und ich setze bereits seit einiger Zeit auf einen breiten Einsatz von CSS und schreibe nur standardkonform, aber ich will eben wissen, ob man sowas wie darin beschrieben, auch wirklich in der Praxis so macht bzw. ob das mit den includes - ebenso wie die Trennung von Layout und Inhalt - guter Stil, d.h. modern usw. ist?

          1. ich will eben wissen, ob man sowas wie darin beschrieben, auch wirklich in der Praxis so macht bzw. ob das mit den includes - ebenso wie die Trennung von Layout und Inhalt - guter Stil, d.h. modern usw. ist?

            Kurz: Ja, ja und ja.

            Lang: Ich gehe mal davon aus, dass Du Dich auf die Seite http://tut.php-q.net/frames.html beziehst. Der Ersatz von Frames durch <div>s ist dort vollkommen korrekt (wenn auch etwas einfallslos ;). Menü und Titel gehören zur Seite, nicht als separate Objekte.
            Zu kritisieren wäre lediglich, dass man ellenlange Texte nicht mit Zeile für Zeile mit echo ausgeben muss. PHP-Block zumachen und hinter wieder aufmachen ist da etwas einfacher.

            Immer wiederkehrende Seitenelemente werden sehr häufig an einen zentralen Ort ausgelagert und vor dem Versand an den Browser vom Server eingefügt, denn es erleichtert die Wartung ungemein. Wer einen Seitenkopf nur einmal vorliegen hat, muss ihn auch nur einmal ändern, anstatt auf allen 500 Seiten.
            Zu eben diesem Zweck gibt es übrigens auch SSI, Server-Side Includes.

            Modern, ja. Muss aber nichts bedeuten. Abstand vom Modernen nimmt zum Beispiel jeder gerne, der sieht, was in den 70er zur "modernen Wohnzimmerausstattung" gehörte :) Vorteilhafter wäre hingegen ein gutes Argument.

            Gruß,
              soenk.e