der henry: PHP: alle id in einer Datei finden

Hallo,

ich möchte am Anfang meiner Webseite (php) mittels PHP Funktion alle id's der aktuellen Datei suchen, in ein Array schreiben und JS zur Verfügung stellen.

Hier habe ich als erstes das Problem dass das PHP-Script erkennen muss aus welcher "Datei" es ausgerufen wird.

z.B.

../extruder15.php

<?php
session_start();
include_once("../system/tools.php");
?>
<!DOCTYPE html>
<html>
<head>
	<title>Extruder 15</title>
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  usw...
	
<script language="JavaScript" type="text/javascript">

const myid = "<?php echo searchids(); ?>";

....
usw.

Gibt es hier irgendeine Möglichkeit im PHP-Script/Funktion "serachids()" zu erkennen, dass das PHP-Script aus der Datei extruder15.php aufgerufen wurde?

Vielen Dank.

  1. Hallo der henry,

    warum willst du das tun? Alle HTML Elemente mit einer ID finden kann JavaScript gut alleine. Gibt es weitere Rahmenbdingungen, die das im PHP verlangen?

    Es ist auch nicht unbedingt die beste Idee, wenn ein PHP Programm sich selbst durchsucht. Du kommst mit der magischen Konstanten __FILE__ an den Pfad und Namen des Scripts, aber Includes, Autoloads und Schleifen können Dir den Spaß gründlich verderben. Da fängt man den Output besser mit ob_start ein und durchsucht, was gepuffert wird.

    Oder man ändert sein Programm so, dass on the fly jede id, die man ins HTML schreibt, in ein Array gelegt wird.

    Das ist aber alles nur wichtig, wenn du die Liste der Ids in PHP brauchst.

    Die JS-only Lösung wäre

    const alleIds = document
            .querySelectorAll("[id]")
            .map(elem => elem.id);
    

    Lass den .map(...) weg, wenn du die Elemente brauchst statt der ids.

    Rolf

    --
    sumpsi - posui - obstruxi
  2. Lieber henry,

    Du bist doch der, der niemals beschreibt, was er tatsächlich zu erreichen sucht. Und Du bist auch der, der sich nicht mehr zurück meldet, wenn man sinnvolle Ergenzungsfragen stellt. Warum sollte ich mich also mit Deinem Problem überhaupt befassen?

    Deine technische Frage klingt ganz danach, dass Du Dir einen nicht besonders sinnvollen Lösungsweg für Dein Problem ausgesucht hast. Vielleicht hast Du Dein eigentliches Problem auch noch nicht so ganz verstanden?

    Liebe Grüße

    Felix Riesterer

    1. Lieber Felix,

      wie wäre es, wenn Du Deine Kritik nicht in dem Ton anbringst, den Du einen renitenten Schüler gegenüber anschlegst?

      Möglicherweise haben wir hier ein A/B Problem. Danach kann man aber auch freundlicher fragen.

      Rolf

      --
      sumpsi - posui - obstruxi
      1. Vielen Dank Rolf, kein Problem.

        Ich werde mich hüten und hier in diesem Forum nochmals eine Frage stellen.

        Vielen Dank

        1. Hallo Henry,

          wenn Du meinst, die Tür von außen schließen zu müssen, ist es also doch ein Problem. Bist Du der Meinung, hier generell schlecht unterstützt zu werden, so dass Dich ein Anranzer dann sofort zum Gehen bewegt?

          Ich bin auch nicht sicher, dass Felix Dich richtig zugeordnet hat. Zumindest in den letzten 2 Monaten habe ich auf einen kurzen Blick hin keine verschleppten Threads von Dir gefunden.

          Aber falls Du glaubst, dass dir ein anderer Mensch oder eine KI besser helfen kann, dann tu, was Du für richtig hältst. Eine KI kritisiert immerhin nicht deine Fragen. Bei anderen Menschen könnte irgendwann auch Frust über zu wenig Einblick in das, was Du tust, aufkommen.

          Grundsätzlich ist es aber schon so, dass mehr Kontext in den Fragen auch bessere Antworten erzeugt. Egal wen Du fragst.

          Wenn ich Dir antworte, dann arbeite ich halt mit dem, was Du mir gibst. Eine eng gefasste Frage ergibt so eine eng gefasste Antwort. Ob das dann am Ende zur besten Lösung führt, weiß ich nicht. Solange Du Dich nachher nicht beklagst, schlecht beraten worden zu sein…

          Rolf

          --
          sumpsi - posui - obstruxi
    2. Hallo Felix. Auch ich musste lernen, berechtigten Unmut positiver auszudrücken.

      Kuck mal wie das geht: https://forum.selfhtml.org/self/2026/may/29/e-mail-parser-service-per-imap/1825149#m1825149

  3. Moin Henry,

    ich möchte am Anfang meiner Webseite (php) mittels PHP Funktion alle id's der aktuellen Datei suchen, in ein Array schreiben und JS zur Verfügung stellen.

    falls Du die IDs von HTML-Elementen meinst, hat @Rolf B bereits eine reine JavaScript-Lösung vorgeschlagen. In Deinem Code unten wäre dann myid lediglich ein JavaScript-Array und kein String.
    Ist der String unten ein Platzhalter oder steckt mehr dahinter? Brauchst Du die IDs auch in PHP oder reicht JavaScript bereits aus?

    Hier habe ich als erstes das Problem dass das PHP-Script erkennen muss aus welcher "Datei" es ausgerufen wird.

    Je nach Nutzung gibt es verschiedene Konstanten oder Variablen dafür.

    <?php
    session_start();
    include_once("../system/tools.php");
    ?>
    <!DOCTYPE html>
    <html>
    <head>
    	<title>Extruder 15</title>
    	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    

    Das ist mittlerweile kürzer möglich:

    <meta charset="utf-8">
    

    Und das auch:

    <script language="JavaScript" type="text/javascript">
    
    const myid = "<?php echo searchids(); ?>";
    
    <script>
    const myid =;
    </script>
    

    Gibt es hier irgendeine Möglichkeit im PHP-Script/Funktion "serachids()" zu erkennen, dass das PHP-Script aus der Datei extruder15.php aufgerufen wurde?

    Siehe mein Link oben, da dürfte etwas für Dich dabei sein.

    Viele Grüße
    Robert