Entweder Ziffern oder Text auslesen?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Entweder Ziffern oder Text auslesen?

    Hallo zusammen,

    das php-dateien-system geht mir langsam auf'n Senkel, den ich hab wieder ein Problem:

    Der inhalt der Datei "site_function.txt" sieht folgendermasen aus:

    Quellcode

    1. 1
    2. 1
    3. 1
    4. Fipsi's Server
    5. dat is fipsis server
    6. /
    7. http://localhost
    8. 1
    9. 1
    10. 1


    die datei, die das ausliest:

    Quellcode

    1. // Seitenkonfigurationen öffnen
    2. $conf_datei = "data/templates/txt-dateien/site_function.txt";
    3. $array_site_function = file($conf_datei);
    4. // Seite aktiv?
    5. if ($array_site_function[0] == "1")
    6. {
    7. $seite_aktiv = "1";
    8. }
    9. else
    10. {
    11. $seite_aktiv = "0";
    12. }
    13. // Rechts aktiviert?
    14. if ($array_site_function[1] == "1")
    15. {
    16. $rechts_aktiviert = "1";
    17. }
    18. else
    19. {
    20. $rechts_aktiviert = "0";
    21. }
    22. // Registration aktiviert?
    23. if ($array_site_function[2] == "1")
    24. {
    25. $regi_aktiviert = "1";
    26. }
    27. else
    28. {
    29. $regi_aktiviert = "0";
    30. }
    31. // Titel der Seite
    32. $seiten_titel = $array_site_function[3];
    33. // Beschreibung der Seite
    34. $seiten_beschreibung = $array_site_function[4];
    35. // Verzeichnis der Software
    36. $verzeichnis_software = $array_site_function[5];
    37. // Domain
    38. $software_domain = $array_site_function[6];
    39. // Chat aktiv
    40. $chat_aktiv = $array_site_function[7];
    41. // Forum aktiv
    42. $forum_aktiv = $array_site_function[8];
    43. // Login aktiv
    44. $login_aktiv = $array_site_function[9];
    Alles anzeigen


    wenn ich jetzt allerdings am end enciht das hier mit drin habe:

    Quellcode

    1. $seite_aktiv = "1";
    2. $rechts_aktiviert = "1";
    3. $regi_aktiviert = "1";
    4. $chat_aktiv = "1";
    5. $forum_aktiv = "1";
    6. $login_aktiv = "1";


    dann werden die zahlen-variablen mit null beschrieben.

    wenn ich jetzt allerdings

    Quellcode

    1. $conf_datei = "data/templates/txt-dateien/site_function.txt";
    2. $array_site_function = file($conf_datei);


    mit dem austausch:

    Quellcode

    1. $conf_datei = file("data/templates/txt-dateien/site_function.txt", "r");
    2. $array_site_function = fgets($conf_datei);


    dann werden nur die zahlen-zeilen bis zu den ersten text-zeilen ausgelesen...
    doch wie kann ich das machen, dass beide arten, text und zahlen, ausgelesen werden?

    Ich danke schonmal

    LG

    Fipsi
  • Quellcode

    1. // Seite aktiv?
    2. if ($array_site_function[0] == "1")
    3. {
    4. $seite_aktiv = "1";
    5. }
    6. else
    7. {
    8. $seite_aktiv = "0";
    9. }


    findest du die logik nicht etwas merkwürdig? wenn 1 dann 1 :D


    dein problem ist, das $array_site_function[0] eine zahl liefert und du sie mit string vergleichst
    $array_site_function[0] == 1
    so gehts wunderbar :whistling:
    MfG ShureG

    There are 10 kinds of people. Those who understand binary notation, and those who do not.
  • hiho,

    nein, ganz hattest du leider nichr recht...
    ich musste nich die oberen drei wie die unteren amchen, sondern umgekehrt:

    Quellcode

    1. <?php
    2. // Seitenkonfigurationen öffnen
    3. $conf_datei = "data/templates/txt-dateien/site_function.txt";
    4. $array_site_function = file($conf_datei);
    5. // Seite aktiv?
    6. if ($array_site_function[0] == 1)
    7. {
    8. $seite_aktiv = "1";
    9. }
    10. else
    11. {
    12. $seite_aktiv = "0";
    13. }
    14. // Rechts aktiviert?
    15. if ($array_site_function[1] == 1)
    16. {
    17. $rechts_aktiviert = "1";
    18. }
    19. else
    20. {
    21. $rechts_aktiviert = "0";
    22. }
    23. // Registration aktiviert?
    24. if ($array_site_function[2] == 1)
    25. {
    26. $regi_aktiviert = "1";
    27. }
    28. else
    29. {
    30. $regi_aktiviert = "0";
    31. }
    32. // Titel der Seite
    33. $seiten_titel = $array_site_function[3];
    34. // Beschreibung der Seite
    35. $seiten_beschreibung = $array_site_function[4];
    36. // Verzeichnis der Software
    37. $verzeichnis_software = $array_site_function[5];
    38. // Domain
    39. $software_domain = $array_site_function[6];
    40. // Chat aktiv
    41. if ($array_site_function[7] == 1)
    42. {
    43. $chat_aktiv = "1";
    44. }
    45. else
    46. {
    47. $chat_aktiv = "0";
    48. }
    49. // Forum aktiv
    50. if ($array_site_function[8] == 1)
    51. {
    52. $forum_aktiv = "1";
    53. }
    54. else
    55. {
    56. $forum_aktiv = "0";
    57. }
    58. // Login aktiv
    59. if ($array_site_function[9] == 1)
    60. {
    61. $login_aktiv = "1";
    62. }
    63. else
    64. {
    65. $login_aktiv = "0";
    66. }
    67. ?>
    Alles anzeigen


    das funzt:)
  • Fipsi schrieb:

    ich musste nich die oberen drei wie die unteren amchen, sondern umgekehrt:

    also wenn ich das hier sehe

    Quellcode

    1. // Seite aktiv?
    2. if ($array_site_function[0] == 1)
    3. {
    4. $seite_aktiv = "1";
    5. }
    6. else
    7. {
    8. $seite_aktiv = "0";
    9. }

    dann steht da nichts anderes als wenn 1 dann 1 sonst 0
    da kannst du ja schon direkt zuweisen
    MfG ShureG

    There are 10 kinds of people. Those who understand binary notation, and those who do not.
  • Fipsi schrieb:

    vince schrieb:

    Ich würde dir vorschlagen mit .ini Dateien zu arbeiten. Das ist übersichtlicher und einfacher zu handeln.

    Die Funktion zum parsen parse_ini_file stellt php schon bereit.


    hab cih jez zu spät gesehen:

    also beim überlesen hab ich nicht ganz durchgeblickt, abe rich glaube, ich habe verstanden, wie das ungefähr läuft... ich werde da mal reinschauen, vielen Dank dir


    also ich hab das gestern mal gemacht, es funktioniert zwar, allerdings bekomm ich bei jeder stelle von der funktion diese fehlermeldung:
    "Notice: Use of undefined constant speicherort - assumed 'speicherort' in "
    Was stimmt da also nich...?

    shureg schrieb:

    Fipsi schrieb:

    ich musste nich die oberen drei wie die unteren amchen, sondern umgekehrt:

    also wenn ich das hier sehe

    Quellcode

    1. // Seite aktiv?
    2. if ($array_site_function[0] == 1)
    3. {
    4. $seite_aktiv = "1";
    5. }
    6. else
    7. {
    8. $seite_aktiv = "0";
    9. }

    dann steht da nichts anderes als wenn 1 dann 1 sonst 0
    da kannst du ja schon direkt zuweisen


    ja, eigentlich schon, aber irgendwie funktioniert das nich, keine ahnung wieso... :?: :?:
  • nix fehlermeldung? ok, auch gut^^ das erklärt zumindest, warum das geht^^

    config.ini

    Quellcode

    1. seiten_titel = Fipsi's Server
    2. seiten_beschreibung = dat is Fipsi's Server
    3. speicherort = http://localhost/
    4. seite_aktiv = 1
    5. forum_aktiv = 1
    6. rechts_aktiv = 1
    7. regi_aktiv = 1
    8. login_aktiv = 1
    9. chat_aktiv = 1


    funktionen.php

    Quellcode

    1. <?php
    2. [...]
    3. // config.ini öffnen
    4. $config_daten = parse_ini_file("data/templates/config.ini");
    5. [...]
    6. ?>


    als Beispiel: header.php

    Quellcode

    1. <?php
    2. echo "<div id=\"header\">";
    3. echo "<a href=\"" . $config_daten[speicherort] . "\">";
    4. echo "<div id=\"header_pic\">";
    5. echo "<img src=\"../pic/templates/header_pic.gif\">";
    6. echo "</div>";
    7. echo "<div id=\"header_titel\">";
    8. echo $config_daten[seiten_titel];
    9. echo "</div>";
    10. echo "<div id=\"header_beschreibung\">";
    11. echo $config_daten[seiten_beschreibung];
    12. echo "</div>";
    13. echo "</a>";
    14. echo "</div>";
    15. ?>
    Alles anzeigen
  • Da $config_daten ein Array ist, musst du speichertort (Und generell die Keys von Arrays) in Anführungszeichen setzen. Ansonsten versucht php nämlich, die Konstante speicherort zu finden - und die existiert eben nicht.

    PHP-Quellcode

    1. <?php
    2. echo "<div id=\"header\">";
    3. echo "<a href=\"" . $config_daten["speicherort"] . "\">";
    4. echo "<div id=\"header_pic\">";
    5. echo "<img src=\"../pic/templates/header_pic.gif\">";
    6. echo "</div>";
    7. echo "<div id=\"header_titel\">";
    8. echo $config_daten["seiten_titel"];
    9. echo "</div>";
    10. echo "<div id=\"header_beschreibung\">";
    11. echo $config_daten["seiten_beschreibung"];
    12. echo "</div>";
    13. echo "</a>";
    14. echo "</div>";
    15. ?>
    Alles anzeigen
    Jan Thurau
    Software and Systems Engineer
    janthurau.de

    [IMG:http://www.pageheroes.com/media/image/pageheroes_logo.png] - We get your page working!