mpthefirst: Wenn-Funktion einbauen

Hallo an alle,

ich habe eine Forum über phpmyforum (dort kann mir nicht geholfen werden) und ein dazupassendes Menü. Doch habe ich ein Problem.

1. Ich bin admin
2. Bin ich eingeloggt, kann ich den link zum admin-Bereich sehen, soll so sein
3. angemeldete user können den link zum admin-Bereich auch sehen, soll nicht sein

Der Code dafür lautet:

<!-- BEGIN user angemeldet -->
    <SCRIPT SRC="./cache/client/ssm.js" language="JavaScript1.2">
    </SCRIPT>
    <SCRIPT language=JavaScript1.2>
    <!--
    /*
    ... gekürzt ...

///////////////////////////

// ssmItems[...]=[name, link, target, colspan, endrow?] - leave 'link' and 'target' blank to make a header
    ssmItems[0]=["Menu"] //create header
    ssmItems[1]=["<#lng_menu_admin#>", "./admin/index.php?", target="_self", ""]
    ssmItems[2]=["<#lng_menu_index#>", "./index.php", target="_self", ""]
    ssmItems[3]=["<#lng_menu_chat#>", "./chat.php", target="_self", ""]
    ssmItems[4]=["<#lng_menu_file_archive#>", "./file_archive.php?", ""]
    ssmItems[5]=["<#lng_menu_calendar#>", "./calendar.php?", target="_self", ""]
    ssmItems[6]=["<#lng_menu_gb#>", "./gb.php", target="_self", ""]

ssmItems[7]=[" ", "", ""] //create header
    ssmItems[8]=["<#lng_menu_user#>", "./user.php?$_sess[", target="_self", ""]__ ssmItems[9]=["<#lng_menu_private#>", ".]............

Davor habe ich natürlich auch eine Wenn-Funktion eingebaut, um zwischen Gästen und usern zu unterscheiden, die auch funktioniert. Nun möchte ich die nächste Wenn-Funktion einbauen, doch wie sollte es dann heißen?

Ich als Admin möchte den link haben, meine user nicht. Was zu ändern ist klar:

1. ssmItems[1]=["<#lng_menu_admin#>", "./admin/index.php?", target="_self", ""]

doch wie, wie schreibe ich für diesen Link eine richtig Wenn-Funktion. Wäre schön, wenn ich eine Lösung bekommen könnte, da ich mehr Anfänger bin.

Im Vorraus schon mal ein Danke!

MfG

  1. Deine Information sind leider sehr sperrlich. Ein Skript könnte zum Beispiel so aussehen:

    if (userType == "admin"){
       ssmItems[1]=["<#lng_menu_admin#>", "./admin/index.php?", target="_self", ""];
    }

    1. Was bräuchtest Du noch alles an Informationen?

      1. Du hast doch schone eine funktionierende Abfrage ob es sich um einen User oder Admin handelt. Benutz einfach die selbe Bedingung wieder, dann sollte es funktionieren. Wenn du noch Hilfe brauchst, poste mal deine "Wenn-Funktion", wie du sie nennst.

        1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
          <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de" xml:lang="de">
          <head>
              <meta http-equiv="content-type" content="text/html; charset=windows-1252" />
              <meta name="author" content="Christoph Roeder" />
              <meta name="copyright" content="Christoph Roeder" />
              <meta name="generator" content="phpMyForum $_config[VER]" />
              <meta name="robots" content="all" />
              <if( $_config['META_KEYWORDS'] )><meta name="keywords" content="$_config[META_KEYWORDS]" /></if>
              <if( $_config['META_DESCRIPTION'] )><meta name="description" content="$_config[META_DESCRIPTION]" /></if>
              <link rel="stylesheet" type="text/css" href="$_cfg[SITE]/cache/client/css_{$_style->cfg['id']}.css" />
              <script type="text/javascript">
                  site_url = "{$_cfg['SITE']}";
              </script>
              <script src="$_cfg[SITE]/cache/client/common.js" type="text/javascript"></script>
              <if( $_config['RSS_ACTIVE'] )><link rel="alternate" type="application/rss+xml" title="RSS" href="$_cfg[SITE]/rss.php" /></if>
              <link rel="home" href="$_cfg[SITE]/index.php?$_sess[url]" title="Home" />
              <link rel="search" href="$_cfg[SITE]/search.php?$_sess[url]" title="Search" />
              <link rel="help" href="http://www.phpmyforum.de/docs.html" title="Docs" target="_blank" />
              <link rel="copyright" href="http://www.phpmyforum.de" title="Copyright" />
              <link rel="up" href="javascript:self.scrollTo(0,0);" />
              <#tpl_pm_popup#>
              <!-- BEGIN switch_slide_menu -->
              <if( $_style->login )>
                  <!-- BEGIN user angemeldet -->
                  <SCRIPT SRC="./cache/client/ssm.js" language="JavaScript1.2">
                  </SCRIPT>
                  <SCRIPT language=JavaScript1.2>
                      <!--
                      /*
                      Configure menu styles below
                      NOTE: To edit the link colors, go to the STYLE tags and edit the ssm2Items colors
          ...
          gekürzt
          ...

          ///////////////////////////

          // ssmItems[...]=[name, link, target, colspan, endrow?] - leave 'link' and 'target' blank to make a header
                      ssmItems[0]=["Menu"] //create header
                      ssmItems[1]=["<#lng_menu_admin#>", "./admin/index.php?", target="_self", ""]
                      ssmItems[2]=["<#lng_menu_index#>", "./index.php", target="_self", ""]
                      ssmItems[3]=["<#lng_menu_chat#>", "./chat.php", target="_self", ""]
                      ssmItems[4]=["<#lng_menu_file_archive#>", "./file_archive.php?", ""]
                      ssmItems[5]=["<#lng_menu_calendar#>", "./calendar.php?", target="_self", ""]
                      ssmItems[6]=["<#lng_menu_gb#>", "./gb.php", target="_self", ""]

          ssmItems[7]=[" ", "", ""] //create header
                      ssmItems[8]=["<#lng_menu_user#>", "./user.php?$_sess[url]", target="_self", ""]
                      ssmItems[9]=["<#lng_menu_private#>", "./private.php?$_sess[url]", target="_self", ""]
                      ssmItems[10]=["<#lng_menu_team#>", "./team.php?$_sess[url]", target="_self", ""]
                      ssmItems[11]=["<#lng_menu_locator#>", "./locator.php?action=big&$_sess[url]", target="_self", ""]
                      ssmItems[12]=["<#lng_menu_member#>", "./members.php?$_sess[url]", target="_self", ""]
                      ssmItems[13]=["<#lng_menu_search#>", "./search.php?$_sess[url]", target="_self", ""]

          ssmItems[14]=[" ", "", ""] //create header
                      ssmItems[15]=["Vor", "javascript:history.forward()", "", 1, "no"] //create two column row
                      ssmItems[16]=["Zurück", "javascript:history.back()", "",1]

          buildMenu();
                      //-->
                  </SCRIPT>
                  <!-- END menu user angemeldet -->
              <else>
                  <!-- BEGIN menu gast -->
                  <SCRIPT SRC="./cache/client/ssm.js" language="JavaScript1.2">
                  </SCRIPT>
                  <SCRIPT language=JavaScript1.2>
                      <!--
                      /*
                      Configure menu styles below
                      NOTE: To edit the link colors, go to the STYLE tags and edit the ssm2Items colors
          ...
          gekürzt
          ...

          ///////////////////////////

          // ssmItems[...]=[name, link, target, colspan, endrow?] - leave 'link' and 'target' blank to make a header
                      ssmItems[0]=["Gäste - Menu"] //create header
                      ssmItems[1]=["<#lng_menu_portal#>", "./portal.php?", ""]
                      ssmItems[2]=["<#lng_menu_index#>", "./index.php", target="_self", ""]
                      ssmItems[3]=["<#lng_menu_chat#>", "./chat.php", target="_self", ""]
                      ssmItems[4]=["<#lng_menu_file_archive#>", "./file_archive.php?", target="_self", ""]
                      ssmItems[5]=["<#lng_menu_calendar#>", "./calendar.php?", target="_self", ""]
                      ssmItems[6]=["<#lng_menu_gb#>", "./gb.php", target="_self", ""]

          ssmItems[7]=[" ", "", ""] //create header
                      ssmItems[8]=["<#lng_menu_signup#>", "./signup.php?$_sess[url]", target="_self", ""]
                      ssmItems[9]=["<#lng_menu_team#>", "./team.php?$_sess[url]", target="_self", ""]
                      ssmItems[10]=["<#lng_menu_member#>", "./members.php?$_sess[url]", target="_self", ""]
                      ssmItems[11]=["<#lng_menu_search#>", "./search.php?$_sess[url]", target="_self", ""]

          ssmItems[12]=[" ", "", ""] //create header
                      ssmItems[13]=["Vor", "javascript:history.forward()", "", 1, "no"] //create two column row
                      ssmItems[14]=["Zurück", "javascript:history.back()", "",1]

          buildMenu();
                      //-->
                  </SCRIPT>
                  <!-- END menu gast -->
              </if>
              <!-- END switch_slide_menu -->

          Das ist der ganze Code...
          Problem ist... wie ich den Code auf den link beziehen kann. Was müßte ich da praktischer Weide schreiben?

          1. Liebe(r) mpthefirst,

            bitte nur komplett-Code posten, wenn es sinnvoll ist. Hier wäre der relevante Ausschnitt alleine vollkommen ausreichend gewesen. Die Gänze Deines Codes macht ihn unleserlich.

            Und dass Du den relevanten Ausschnitt nicht erkennst, lässt vermuten, dass Du Deinen Code noch nicht ausreichend studiert hast. Auch wenn Dir viele Grundlagen möglicherweise noch fehlen, darf man das zumindest von Dir erwarten!

            Was müßte ich da praktischer Weide schreiben?

            Verständliches Deutsch. Oder bist Du ein Weidentier mit Sprachfehler? *SCNR*

            Liebe Grüße,

            Felix Riesterer.

            --
            ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
            1. Entschuldigung für meinen Rechtschreibfehler!

              Aber mal im Ernst. Ich bin wirklich neu auf dem Gebiet und versuche mich irgendwie erfolgreich durch zu schlagen.
              Meine Frage bezieht sich auf den Link. Wie müßte ich den Code des Linkes gestalten, dass er mit einer Wenn-Funktion ausgestattet ist. Wenn es denn möglich ist.
              Ich bin auch vollkommend bereit etwas zu lernen, doch bin ich auch auf Euch angewiesen. Es wäre schön, wenn jemand vielleicht das richtig Script mir zeigen könnte, eventuell vielleicht auch mit Erklärungen.

              1. Lieber mpthefirst,

                Aber mal im Ernst. Ich bin wirklich neu auf dem Gebiet und versuche mich irgendwie erfolgreich durch zu schlagen.

                ist ja auch OK. Aber warum erklärst Du denn dann nicht, was _genau_ Du bereits begriffen hast, und was nicht? Zum Beispiel ist mir folgender (X)HTML-Code völlig unbekannt:

                <if( $_config['META_KEYWORDS'] )><meta name="keywords" content="$_config[META_KEYWORDS]" /></if>

                Mir scheint, Du benutzt eine Art Template-Engine (Smarty?), da Du nach wie vor unter dem Themenbereich "PHP" postest, ich aber keinen wirklichen PHP-Code in Deinem Code finden kann. Mir ist Smarty nur dem Namen nach bekannt - ich benutze es nicht.

                Also was genau hast Du verstanden, und was nicht? Wovon sprichst Du in Deinen Fragen, und wovon nicht? Welche Techniken nutzt Du, und welche nicht? Welche Grundbegriffe sind Dir geläufig und welche nicht?

                Liebe Grüße,

                Felix Riesterer.

                --
                ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
                1. Ja, ich benutze ein Template von phpmyforum.de, doch da kann mir nicht geholfen werden...

                  Ich möchte die if-Konstruktes für den link benutzen. Er soll nur für den admin angezeigt werden und nicht für die user. wie das funktioniert ist die frage, da ich es durch probieren nicht herausbekomme habe.

                  mfG mpthefirst

                  1. Lieber mpthefirst,

                    beschäftige Dich mit den Grundlagen von PHP und benutze nur das, was Du auch verstehst. Alles andere führt Dich nur in die Wüste!!

                    Und wenn Du schon nicht weißt, was Du da tust, und Dich durch die hier gestellten Fragen auch nicht zum Nachdenken darüber anregen lassen willst, sehe ich meine Teilnahme in dieser Diskussion als fortan sinnfrei an.

                    Ich wünsche Dir viel Erfolg beim Ausprobieren, denn lernen willst Du anscheinend ja nicht...

                    Liebe Grüße,

                    Felix Riesterer.

                    --
                    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
                    1. 1. Habe ich keine Zeit im Moment mich auch noch mit php auseinander zu setzen, da ich nur diese eine kleine Sache ändern möchte, und mehr nicht, da der Rest mit css und html, dhtml machbar ist.
                      2. Lernen schon, aber nicht jetzt, da es nur ein kleine Sache ist, und ich dachte, dass die Klugenköpfe mir hier weiter helfen könnten.

                      Es wäre damit sehr schon, wenn jemand mir vielleicht die Lösung zeigen könnte,
                      damit dieses Forum hier nicht überflüßige gespamt wird. Auch sollen die späteren Leser dieses Forum nicht erst irgendwelche Kommentare lesen müssen.

                      MfG mpthefirst

                      1. Mahlzeit mpthefirst,

                        1. Lernen schon, aber nicht jetzt, da es nur ein kleine Sache ist, und ich dachte, dass die Klugenköpfe mir hier weiter helfen könnten.

                        Sicher kann das jemand. Allerdings fehlen dazu schlicht und ergreifend ein paar grundsätzliche Dinge, auf die Du bereits hingewiesen wurdest.

                        Einerseits ist es wirklich eine Kleinigkeit, um eine PHP-Anweisung herum ein if-Konstrukt zu bauen. Was genau ist dabei Dein Problem?

                        Andererseits hast Du bisher keinen relevanten Beispielcode gezeigt. Es handelt sich anscheinend um ein PHP-Problem ... doch ich kann in Deinem entsprechenden Posting keinen PHP-Code erkennen. Was erwartest Du von Deinen Lesern? Dass sie hellsehen können? Glaskugeln sind grad aus - kommen auch nicht wieder rein.

                        Es wäre damit sehr schon, wenn jemand mir vielleicht die Lösung zeigen könnte,

                        Dir wurden Lösungsvorschläge genannt. Es liegt an Dir, diese umzusetzen. Wenn Dir dafür die entsprechenden Kenntnisse fehlen, kannst Du sie erlernen oder alternativ jemanden damit beauftragen, die Vorschläge für Dich umzusetzen.

                        MfG,
                        EKKi

                        --
                        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
                        1. Hi,

                          Neuer Versuch, es fehlen grundsätzliche Dinge, auf die ich bereits hingewiesen worden bin, doch welche sollen es sein? Keiner Fragt etwas genaues, oder ich habe es überlesen.
                          Also ich habe ein Forum über phpmyforum.de und benutze ein ähnliches Menü wie dieses -> Menü

                          Habe mich auch belesen und auch das Script 1UnitedParty versucht, doch verschwindet dann immer das Menü. Mein Problem ist nun diese Bedingung auf diesen Link anzuwenden.

                          ssmItems[1]=["<#lng_menu_admin#>", "./admin/index.php?", target="_self", ""]

                          Naturlich können sie nicht hellsehen, doch bin ich auch Anfänger auf diesem Gebiet und wußte nicht, dass man hier gleich angegriffen wird.

                          Hier mein Versuch:

                          <if ($usertype == "admin"){
                             ssmItems[1]=["<#lng_menu_admin#>", "./admin/index.php?", target="_self", ""];
                          }
                          elseif ($usertype =="user"){
                             ssmItems[1]=["<#lng_menu_portal#>", "./portal.php?", ""];}></if>

                          Problem ist nun, das Menü ist da, aber der Link ist weg.

                          MfG Mpthefirst

                          1. Hallo,

                            Neuer Versuch, es fehlen grundsätzliche Dinge, auf die ich bereits hingewiesen worden bin, doch welche sollen es sein?

                            zum Beispiel verrätst du uns bisher nicht, was das überhaupt für ein Code ist, mit dem du da arbeitest.

                            Also ich habe ein Forum über phpmyforum.de und benutze ein ähnliches Menü wie dieses -> Menü

                            Das ist ein in Javascript realisiertes Menü (eine schlechte Idee übrigens, die Navigation von optionalen Techniken wie Javascript abhängig zu machen). Den Zusammenhang zu dem von dir gezeigten Code sehe ich aber nicht.

                            Naturlich können sie nicht hellsehen, doch bin ich auch Anfänger auf diesem Gebiet und wußte nicht, dass man hier gleich angegriffen wird.

                            Aber dir sollte klar sein, dass auch ein Insider zunächst mal wissen muss, mit welcher Technik du überhaupt umgehst. Wenn du nach dem schnellsten Weg zum nächsten Flughafen fragst, muss der Gefragte auch erst wissen, ob du mit dem Fahrrad, mit der Bahn, zu Fuß, mit dem Auto oder mit dem Helikopter dorthin willst.

                            <if ($usertype == "admin"){
                               ssmItems[1]=["<#lng_menu_admin#>", "./admin/index.php?", target="_self", ""];
                            }
                            elseif ($usertype =="user"){
                               ssmItems[1]=["<#lng_menu_portal#>", "./portal.php?", ""];}></if>

                            Denn was du uns hier zeigst, ist
                             * kein HTML
                             * kein PHP
                             * kein Javascript
                            sondern vermutlich der Meta-Quellcode eines CMS oder einer Template Engine. Solange wir darüber nichts wissen, ist eine Hilfe völlig unmöglich.

                            So long,
                             Martin

                            --
                            Ich wollt', ich wär ein Teppich.
                            Dann könnte ich morgens liegenbleiben.
                            1. Ich benutze ein Template, das sagte ich aber schon. Den Quellcode stellte ich davon rein. Siehe oben.

                              Das Script für das Slide menü ist hier zu finden. Vielleicht kommen wir damit etwas weiter. menü ?!

                              1. Mahlzeit mpthefirst,

                                Ich benutze ein Template, das sagte ich aber schon.

                                Richtig. Du hast aber nicht gesagt, für welches Template-System oder CMS dieses Template ist. Woher also sollen Deine Leser das wissen?

                                Den Quellcode stellte ich davon rein. Siehe oben.

                                Der Quellcode nützt gar nichts, solange Deine Leser nicht wissen, um welche Art Code bzw. welches System oder welche Sprache es sich handelt.

                                MfG,
                                EKKi

                                --
                                sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
                                1. Also ich habe auch nur diese Info:

                                  "Basierend auf PHP und mySQL ist das phpMyForum die ideale Community Lösung für Ihre Webseite." (Quelle: phpmyforum.de)Und es wären alle BBCodes änderbar. Hilft uns das weiter?

                                  Die Styles werden mit CSS bearbeitet.

                                  1. das ist die Lösung:

                                    <!-- BEGIN switch_slide_menu -->
                                    <if( $_style->admin )>
                                    <!-- BEGIN user angemeldet -->

                                    Für alle, die mir nicht helfen konnten oder wollten!! Statt "login" einfach "admin" schreiben. Danke den Beiden, die mir auf die Sprünge geholfen haben.

                                    MfG mpthefirst

                      2. Lieber mpthefirst,

                        1. Habe ich keine Zeit im Moment mich auch noch mit php auseinander zu setzen, da ich nur diese eine kleine Sache ändern möchte, und mehr nicht, da der Rest mit css und html, dhtml machbar ist.

                        aha, selber keine Zeit, also mögen bitte andere Deine Arbeit machen... oder wie jetzt?

                        1. Lernen schon, aber nicht jetzt, da es nur ein kleine Sache ist

                        Aha! Dir ist die Sache das Lernen nicht wert. Das nenne ich lernunwillig. Und wenn die Sache so mickrig ist, dass sie Dein Lernen nicht wert ist, dann ist sie vielleicht unsere Hilfe noch viel weniger wert? Denn anstatt dass Du diese nichtige Sache selbst ohne Umwege aus der Welt schaffst, lässt Du jetzt uns aus dem Forum auch noch damit befassen - sowas von unlogisch. Du scheinst mir entweder zu bequem oder zu lernresistent zu sein!

                        und ich dachte, dass die Klugenköpfe mir hier weiter helfen könnten.

                        _Weiter_helfen ja, aber dazu musst Du den Weg schon ein Stückchen gehen, bevor von "weiter" überhaupt die Rede sein kann! Du verlangst hier (im _SELF_-Forum!) aber, dass andere Deine Arbeit für Dich erledigen. Und gegen lernunwillige Poster sind manche hier (darunter auf jeden Fall ich) allergisch.

                        Es wäre damit sehr schon, wenn jemand mir vielleicht die Lösung zeigen könnte

                        Klar wäre das schön. Noch viel schöner wäre dagegen, wenn Du zeigen könntest, dass Du hier etwas dazugelernt hast - ach nein, Du willst ja jetzt wegen der Nichtigkeit des Anlasses nichts lernen, sondern erst später, wenn es sich einmal vielleicht lohnt.

                        damit dieses Forum hier nicht überflüßige gespamt wird.

                        Na, dann kehre gefälligst zuerst vor Deiner eigenen Türe!

                        Auch sollen die späteren Leser dieses Forum nicht erst irgendwelche Kommentare lesen müssen.

                        Mache Dir mal lieber um Dich selbst mehr Gedanken, anstatt über die Archivleser, die Deinen Mist hier verdauen sollen.

                        Ich kann auf Reaktionen wie die Deinen gut und gerne verzichten. Viel Erfolg noch, egal in welcher Hinsicht,

                        Felix Riesterer.

                        --
                        ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
              2. Mahlzeit mpthefirst,

                Meine Frage bezieht sich auf den Link. Wie müßte ich den Code des Linkes gestalten, dass er mit einer Wenn-Funktion ausgestattet ist. Wenn es denn möglich ist.

                Es gibt keine "Wenn-Funktion". Also kann man auch keinen Link damit "ausstatten". Du kannst in PHP mittels eines if-Konstruktes in Abhängigkeit einer Bedingung den einen oder anderen Code ausführen (der dann z.B. unterschiedliches HTML ausgibt), falls Du das meinst ...

                Ich bin auch vollkommend bereit etwas zu lernen, doch bin ich auch auf Euch angewiesen. Es wäre schön, wenn jemand vielleicht das richtig Script mir zeigen könnte, eventuell vielleicht auch mit Erklärungen.

                "Das richtige Skript" schreibst Du Dir sinnvollerweise lieber "SELF" - die Erklärungen dazu bekommst Du in der Dokumentation der von Dir verwendeten Technologien ... Hilfe bei konkreten Fragen natürlich auch gern hier.

                MfG,
                EKKi

                --
                sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    2. Hi!

      Deine Information sind leider sehr sperrlich.

      Leider ja, ich kann mich hier kaum noch bewegen und gehe besser nach Hause.

      off:PP

      --
      "You know that place between sleep and awake, the place where you can still remember dreaming?" (Tinkerbell)