Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

In Dateien schreiben

Eingetragen von kev52 (423)
am 12.09.2008 - 18:45 Uhr in
  • Allgemeines zu Drupal
  • Drupal 5.x oder neuer

Ich versuche gerade Daten aus einem Node in eine txt Datei zu schreiben, ein Problem hab ich dabei aber, nämlich wie genau muss die Pfadangabe aussehen, damit das funktioniert? Ich habe die normale http URL genommen, aber die scheint nicht zu funktionieren.

‹ Wie "Kontaktieren" in Contact Form ersetzen? Scheduler und Archiv ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: aus einem Node in

Eingetragen von quiptime (4972)
am 12.09.2008 - 23:23 Uhr
Zitat:

aus einem Node in eine txt Datei zu schreiben

Erklaere bitte wie Du das machst.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

der Code sieht wie folgt

Eingetragen von kev52 (423)
am 12.09.2008 - 23:36 Uhr

der Code sieht wie folgt aus. Leider funktioniert das so nicht wirklich!

<?php


function test_service_xml($arr)
{
  foreach(
$arr as $key=>$value)
  {
      $
$key = $value;
  }
 
 
//validate node 
 
node_validate($arr);
  if (
$errors = form_get_errors()) {
    return
services_error(implode("\n", $errors));
  }

 
$node = node_submit($arr);
 
 
$node->field_xml_url = $xml; // URL: http://www.my-site.de/files/id.xml
 
 
$filecontent = stripslashes($captions);
 
$filehandle = fopen($node->field_xml_url, "w+");
 
  if(!
fwrite($filehandle, $filecontent))
  {
    return
services_error("ERROR: Kann die Datei nicht speichern.");
  }
 
  @
fclose($filehandle);
 
 
node_save($node);
 
 
db_query("UPDATE {content_type_test} SET field_xml_url = '%s' WHERE nid = %d", $node->field_xml_url, $node->nid);
 
  return
$success;
}
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du kannst, wenn deine

Eingetragen von Alexander Langer (3416)
am 12.09.2008 - 23:48 Uhr

Du kannst, wenn deine PHP-Konfiguraton es zulässt (was sie nicht sollte), in PHP eine URL benutzen um eine Datei zu Lesen zu öffnen. Das funzt, weil man relativ einfach im Hintergrund schauen kann, ob der Dateiname eine URL ist und kann entsprechend an den Zielserver ein GET senden.

Das sollte aber nicht darüber hinweg täsuchen, dass ein Webserver keine Festplatte ist, auf die man schreiben kann (auch wenn es ein Kommando PUT und Erweiterungen wie WebDAV gibt, ist aber ein anderes Thema).

Wenn du mit PHP eine Datei schreiben willst, musst du diese über einen im lokalen Dateisystem gültigen relativen oder absoluten Pfad ansprechen.

Sonst könnte ja ein jeder auf die Idee kommen auf jedermanns Webserver seinen Krempel abzuladen...

--
Webseiter

  • Anmelden oder Registrieren um Kommentare zu schreiben

wie kann ich das

Eingetragen von kev52 (423)
am 13.09.2008 - 00:03 Uhr

wie kann ich das realisieren? also wie bekomme ich den entsprechenden pfad?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Dort liegt der Hase.

Eingetragen von quiptime (4972)
am 13.09.2008 - 00:12 Uhr
Zitat:

ERROR: Kann die Datei nicht speichern.

Dort liegt der Hase. Naja, wusstest Du ja bereits.

Packe eine PHP Datei, beispielsweise "phpinfo.php" mit

<?php
phpinfo
();
?>

in das Rootverzeichnis Deiner Drupalinstallation und rufe diese Datei im Browser auf. Dann suche Dir in dem was der Browser anzeigt den Serverpfad oder den Pfad zu der aufgerufenen Datei.

Das Schreiben in die Datei funktioniert nicht weil sie nicht gefunden wird weil der der Pfad nicht stimmt. Der Pfad ist Root_Deiner_Drupalinstallation/Ordner/Datei_zum_Schreiben.txt

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das Zauberwort ist

Eingetragen von Alexander Langer (3416)
am 13.09.2008 - 00:17 Uhr

Das Zauberwort ist DOCUMENT_ROOT : http://www.php.net/manual/de/reserved.variables.server.php

--
Webseiter

  • Anmelden oder Registrieren um Kommentare zu schreiben

$DOCUMENT_ROOT

Eingetragen von quiptime (4972)
am 13.09.2008 - 00:37 Uhr

Es gibt Serverkonfigurationen das kann man $DOCUMENT_ROOT nicht verwenden weil die Variable nicht den korrekten Pfad enthaelt. Da ist es gut zu wissen wie man $DOCUMENT_ROOT einfacherweise pruefen kann.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Unterschiede können

Eingetragen von Alexander Langer (3416)
am 13.09.2008 - 02:11 Uhr

Unterschiede können auftreten, wenn a) irgendein Depp den Wert überschreibt (ist ja leider keine Konstante) oder b) ein lustiger Geselle lustige Webserverkonfigs einsetzt.

Grundsätzlich ist der Weg über die globalen vordefinierten Variablen in PHP aber allen anderen Lösungen vorzuziehen, weil er in sich SAUBER ist. Ich kann doch nicht im ersten Schritt jemandem ernsthaft raten, mit hartkodierten Pfaden um sich zu werfen. Das ist Foobar allererster Kajüte.

PHP ist für sich genommen schon gruselig genug. Da sollte man als Progger wenigstens das Beste draus machen. ;-)

--
Webseiter

  • Anmelden oder Registrieren um Kommentare zu schreiben

vielen dank für die

Eingetragen von kev52 (423)
am 13.09.2008 - 10:25 Uhr

vielen dank für die Hinweise, hoffentlich klappt's ;o)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
Weiter

Neue Kommentare

  • Verwende doch das Tag dafür,
    vor 6 Tagen 19 Stunden
  • Guckst du hier: step by step
    vor 6 Tagen 9 Stunden
  • Guckst du hier: step by step
    vor 6 Tagen 9 Stunden
  • Ich habe ja keine Angst vor
    vor 2 Wochen 1 Tag
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 2 Wochen 4 Tagen
  • Vielen Dank erst einmal, aber
    vor 2 Wochen 5 Tagen
  • Du hast die "Trusted host
    vor 2 Wochen 6 Tagen
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 4 Wochen 4 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 5 Wochen 1 Tag
  • Arrrrg. Nix Tabelle :-D /*
    vor 9 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250284
Registrierte User: 20500

Neue User:

  • RandallFloop
  • Inga GuAph
  • Robertolix

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 22 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association