PHP-Zugriff auf baseportal-DB - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Sebastian (0 Beiträge) am Freitag, 13.Februar.2004, 16:39.
    PHP-Zugriff auf baseportal-DB

      Hallo!

      Ich muss aus PHP heraus Daten in eine baseportal-Datenbank schreiben. In der aktuellen Version von baseportal kann man Perl und PHP ja mischen, so dass es eigentlich kein Problem hätte sein sollen.

      Jetzt habe ich eben ein Post aus dem Januar gelesen (und es selbst ausprobiert), dass der PHP-Zugriff bei Lizenz-Servern nicht funktioniert.

      Frage: Warum nicht?
      Und: Wie kann ich entweder die Perl/PHP-Kombination für einen Lizenz-Server zum Laufen bringen oder auf andere Weise aus PHP heraus Daten in die bp-DB speichern und lesen?

      Vielen Dank für eure Hilfe!
       Sebastian
      


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Sebastian (0 Beiträge) am Freitag, 13.Februar.2004, 16:39.
    PHP-Zugriff auf baseportal-DB

      Hallo!

      Ich muss aus PHP heraus Daten in eine baseportal-Datenbank schreiben. In der aktuellen Version von baseportal kann man Perl und PHP ja mischen, so dass es eigentlich kein Problem hätte sein sollen.

      Jetzt habe ich eben ein Post aus dem Januar gelesen (und es selbst ausprobiert), dass der PHP-Zugriff bei Lizenz-Servern nicht funktioniert.

      Frage: Warum nicht?
      Und: Wie kann ich entweder die Perl/PHP-Kombination für einen Lizenz-Server zum Laufen bringen oder auf andere Weise aus PHP heraus Daten in die bp-DB speichern und lesen?

      Vielen Dank für eure Hilfe!
       Sebastian
      

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Freitag, 13.Februar.2004, 17:47.
    Re: PHP-Zugriff auf baseportal-DB

      > Warum nicht?
      

      2 Gründe: a) Das Zusammenspiel zwischen baseportal und PHP funktioniert nur, wenn der Server speziell dafür eingerichtet ist. Das kann bei der Lizenzversion natürlich nicht garantiert werden und b) wurde die PHP-Erweiterung für das Lizenz-Update nicht rechtzeitig fertig

      Es ist allerdings nicht weiter schwierig, aus einem eigenen PHP-Skript auf die baseportal-DBs zuzugreifen und zwar kann man in PHP ja auf beliebige URLs zugreifen (weiss den grad nich auswendig) und dann kannst Du z.B. mit einem einfachen Template mit

      <do action=input>
      

      auf baseportal-Seite und dem Aufruf dieses Templates mit

      ...baseportal.pl?htx=template&Name:=Hans&Ort:=Hamburg

      in die DB schreiben und mit einem anderen Template

      <loop>
      $Name#$Ort\n
      </loop>
      

      und dem Aufruf des Templates die Daten lesen (die Du danach noch ein bisschen zerlegen musst).

      klar?

     Antworten

    Beitrag von Sebastian (0 Beiträge) am Freitag, 13.Februar.2004, 18:21.
    Re: PHP-Zugriff auf baseportal-DB

      Hallo Christoph,

      vielen Dank für die schnelle Antwort!

      Das mit dem Subrequest ist eine ganz gute Idee als Workaround. Die Ausgabe könnte sogar einfach PHP-Code generieren (a la $name="Fritz";), der dann vom echten PHP per eval() geparsed wird.

      Ideal wären natürlich ein paar reine PHP-Funktionen, mit denen man Zugriff auf die DB hat. Also eine PHP-Implementierung von get/set/mod/del - selbst wenn die Performance der PHP-Version deutlich schlechter ist, müsste man dann keinen Umweg über die baseportal-Aufrufe mehr gehen. Aber vermutlich wäre das trotzdem noch recht viel Aufwand...

      Viele Grüsse,
       Sebastian
      

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Freitag, 13.Februar.2004, 19:59.
    Re: PHP-Zugriff auf baseportal-DB

      Das ist genau das was die baseportal-PHP-Erweiterung bereitstellt ;-)

      Ich habe auch vor es in das nächste Lizenz-Update einzubauen, aber im Moment habe ich noch mit dem letzten zu kämpfen ,-)

     Antworten

    Beitrag von Sebastian (0 Beiträge) am Freitag, 13.Februar.2004, 19:11.
    Re: PHP-Zugriff auf baseportal-DB

      Hallo!

      Noch eine Frage:
      Ich möchte nicht die ausgelesenen Felder fest auflisten, wie es bei

      <loop>
      $Name#$Ort\n
      </loop>
      

      nötig wäre. Stattdessen möchte ich allgemein über alle ausgelesenen Felder iterieren. Ich dachte, die sollten auch in %_get enthalten sein, kann sie dort aber mit einer Testabfrage nicht finden. Gibt es eine andere Variable, über die ich auf die Ergebnisse der letzten Abfrage zugreifen kann?

      Dankeschön!
       Sebastian
      

     Antworten

    Beitrag von Sander (8133 Beiträge) am Freitag, 13.Februar.2004, 20:00.
    Re: PHP-Zugriff auf baseportal-DB

      <loop code=perl>
      foreach(keys %_loop){
        out $_loop{$_};
      }
      </loop>
      

      Sander

     Antworten

    Beitrag von Sebastian (0 Beiträge) am Freitag, 13.Februar.2004, 20:53.
    Re: PHP-Zugriff auf baseportal-DB

      Super! Wunderbar, das habe ich gesucht.

      So wie es aussieht, wird daraus noch eine universelle PHP->BP-Bridge.... wenns soweit ist poste ich das hier noch mal rein.

      Danke für eure Hilfe!
       Sebastian
      

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Freitag, 13.Februar.2004, 20:01.
    Re: PHP-Zugriff auf baseportal-DB

      Das macht %_loop (ja, %_get wäre der bessere Name, war damals eine Design-Fehlentscheidung ;-) ). Also:

      <loop code=perl>
      foreach $feld (keys %_loop)
      {
        $out.="$_loop{$feld}#";
      }
      chop $out;
      out "$out\n";
      </loop>
      

      ;-)

     Antworten


     
 Liste der Einträge von 31950 bis 32100:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.11s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!