Ankündigung

Einklappen
Keine Ankündigung bisher.

2 kleine Zeilen Code, machen mir zu schaffen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 2 kleine Zeilen Code, machen mir zu schaffen

    Grüße an die PHP Community.

    Hi und Hallo und schön das es euch gibt.

    Ich habe da jetzt auch einmal ein klitzekleines Problemchen
    und stehe da wie der Ochse vor dem Berge.

    Folgendes ist:
    Ich versuche gerade einen Do it yourself Mod einzubauen.
    Der Programmierer dessen, will aber gleich für eine Stunde bezahlt werden,
    wobei es sich nur um läppische 2 Zeilen Code handelt.

    Darum versuche ich hier einmal mein Glück in der Hoffung das es jemanden gibt, der mir zeigt wo ich den Fehler mache
    und ich mir das viele Geld irgendwie sparen kann.

    Folgende 2 Zeilen (einX markiert die Stellen)
    PHP-Code:
    $categories_page_content .= (($table_name == 'categories') ? '<td align="center"> '.
                
    '<input name="hidden[]" type="checkbox" id="hidden[]" value="' $category_details['category_id'] . '" ' .(($category_details['hidden']==1) ? 'checked' '') . '></td>'.
        <!-- 
    HIER        (($category_details['parent_id']==0)?'<td align="center">' .(($category_details['user_id']==0) ? '<input name="hp_featured[]" type="checkbox" id="hp_featured[]" value="' $category_details['category_id'] . '" (($category_details['hp_featured']) ? 'checked' : '') . '>' : '' ) . '</td>' : ''):'').  HIER -->
                  '
    <td align="center"><input name="delete[]" type="checkbox" id="delete[]" value="' . $category_details['category_id'] . '"></td'.
             '
    </tr'; 
    PHP-Code:
    (($category_details['parent_id']==0)?'<td align="center">' .(($category_details['user_id']==0) ? '<input name="hp_featured[]" type="checkbox" id="hp_featured[]" value="' $category_details['category_id'] . '" (($category_details['hp_featured']) ? 'checked' : '') . '>' : '' ) . '</td>' : ''):''). 
    muss hier
    PHP-Code:
    $categories_page_content .= (($table_name == 'categories') ? '<td align="center"> '.
                
    '<input name="hidden[]" type="checkbox" id="hidden[]" value="' $category_details['category_id'] . '" ' . (($category_details['hidden']==1) ? 'checked' '') . '></td>'.
                
    '<td align="center"><input name="sample[]" type="checkbox" id="sample[]" value="' $category_details['category_id'] . '" ' . (($category_details['sample']==1) ? 'checked' '') . '></td>' '').
                
    '<td align="center"><input name="automotive[]" type="checkbox" id="automotive[]" value="' $category_details['category_id'] . '" ' . (($category_details['automotive']==1) ? 'checked' '') . '></td> '.
          
    '<td align="center"><input name="delete[]" type="checkbox" id="delete[]" value="' $category_details['category_id'] . '"></td> '.
          
    '<td>&nbsp;</td>'.
          
    '</tr> '
    irgendwie eigebaut werden.

    Aber ich bekomme das gerade nicht auf die Reihe, bin etwas damit überfordert. Vielleicht mache ich selben Fehler auch einfach nur immer wieder.

    Wenn sich einer meiner erbarmen könnte, dann wäre das irgendwie... super.

    Danke für eventuelle Hilfe und Gruß


  • #2
    Das sieht stark nach einem XT based Shopsystem aus?
    Wie genau soll denn die Zeile implementiert werden? Du hast da mehrere Trinär-Operationen drinnen, aber sagst nicht, an welche Stelle Du das eingesetzt haben willst.
    Competence-Center -> Enjoy the Informatrix
    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

    Kommentar


    • #3
      Hallo werte/s Helferlein.

      Ja, das war vielleicht etwas unpräzise Ausgedrückt wegen dem späteren Edit.

      Nun. Ich möchte gerne diese Zeile
      PHP-Code:
      (($category_details['parent_id']==0)?'<td align="center">' .(($category_details['user_id']==0) ? '<input name="hp_featured[]" type="checkbox" id="hp_featured[]" value="' $category_details['category_id'] . '" (($category_details['hp_featured']) ? 'checked' : '') . '>' : '' ) . '</td>' : ''):'). 
      so in der Art
      PHP-Code:
      '<td align="center"><input name="sample[]" type="checkbox" id="sample[]" value="' $category_details['category_id'] . '" ' . (($category_details['sample']==1) ? 'checked' '') . '></td>' ''). 
      aussehen haben.

      Es folgen also nach der o.g. Zeile noch weitere Zeilen, wie hier im gesamten zu erkennen ist:
      PHP-Code:
      $categories_page_content .= (($table_name == 'categories') ? '<td align="center"> '.
                  
      '<input name="hidden[]" type="checkbox" id="hidden[]" value="' $category_details['category_id'] . '" ' . (($category_details['hidden']==1) ? 'checked' '') . '></td>'.
                  
      '<td align="center"><input name="sample[]" type="checkbox" id="sample[]" value="' $category_details['category_id'] . '" ' . (($category_details['sample']==1) ? 'checked' '') . '></td>' '').
                  
      '<td align="center"><input name="automotive[]" type="checkbox" id="automotive[]" value="' $category_details['category_id'] . '" ' . (($category_details['automotive']==1) ? 'checked' '') . '></td> '.
            
      '<td align="center"><input name="delete[]" type="checkbox" id="delete[]" value="' $category_details['category_id'] . '"></td> '.
            
      '<td>&nbsp;</td>'.
            
      '</tr> '
      Denn wenn ich die o.g. so einfüge oder in Teilen ändere, läuft nichts mehr auf der Kategorienseite.
      Ich nehme an, das der Fehler sehr winziger Natur sein wird.

      Danke.

      PS: xtcommerce ähnl., ist eine Auktionssoftware.

      Kommentar


      • #4
        Die Zeile(n), die Du einfügen willst scheinen fehlerhaft zu sein. Hier mal ein wenig formatiert und korrigiert, wie ich vermute, daß sie sein sollten:
        PHP-Code:
        (
            (
        $category_details['parent_id']==0)
                ?    
        '<td align="center">' . (
                    (
        $category_details['user_id']==0)
                        ?    
        '<input name="hp_featured[]" type="checkbox" id="hp_featured[]" value="' $category_details['category_id'] . '"' .
                            ( (
        $category_details['hp_featured'])? 'checked''' ) . '>'
                        
        :    ''
                    
        ) . '</td>'
                
        :    ''

        ...bleibt aber die Frage, wohin willst Du das haben? Soll das abhängig von der Bedingung ($table_name == 'categories') sein?
        Wenn nicht, davor oder dahinter, Du mußt schon genauer definieren, was Du willst.

        Irgendwie darein ist nicht spezifisch genug.
        Competence-Center -> Enjoy the Informatrix
        PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

        Kommentar


        • #5
          Wer so einen Code fabriziert, gehört echt in den Keller gesperrt
          Als ob 2 deutlich lesbare if-Abfragen zu einem Beinbruch geführt hätten... stattdessen holt man sich beim Anschauen dieses Codes nen Augenkrampf.
          Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

          Kommentar


          • #6
            Zitat von Arne Drews Beitrag anzeigen
            Die Zeile(n), die Du einfügen willst scheinen fehlerhaft zu sein. Hier mal ein wenig formatiert und korrigiert, wie ich vermute, daß sie sein sollten:
            PHP-Code:
            (
                (
            $category_details['parent_id']==0)
                    ?    
            '<td align="center">' . (
                        (
            $category_details['user_id']==0)
                            ?    
            '<input name="hp_featured[]" type="checkbox" id="hp_featured[]" value="' $category_details['category_id'] . '"' .
                                ( (
            $category_details['hp_featured'])? 'checked''' ) . '>'
                            
            :    ''
                        
            ) . '</td>'
                    
            :    ''

            ...bleibt aber die Frage, wohin willst Du das haben? Soll das abhängig von der Bedingung ($table_name == 'categories') sein?
            Wenn nicht, davor oder dahinter, Du mußt schon genauer definieren, was Du willst.

            Irgendwie darein ist nicht spezifisch genug.
            Zunächst einmal einen herzlichen dank dafür. Leider auch hier, selbes resultat, Seite der Kategorien bleibt weiß.

            Ich präzisiere gerne einmal ganz ausführlich:
            Innerhalb einer Auktionssoftware soll ein Modul includiert werden (selfMOD).
            Diese Mod hat die Aufgabe, Kategorien als featured im Auktionshaus anzuzeigen. (Cat.0 = Hauptstamm/Alle)
            Nun muss ich eine Checkbock einsetzen hinter den Automotive Mod jedoch vor der Checkbox für einen Löschauftrag
            '<td align="center"><input name="delete[]" type="checkbox" id="delete[]" value="' . $category_details['category_id'] . '"></td> '.

            Das ist mit "da/zwischen" gemeint.


            Nun habe ich das Problem, das diese Zeile
            PHP-Code:
            (($category_details['parent_id']==0)?'<td align="center">' .(($category_details['user_id']==0) ? '<input name="hp_featured[]" type="checkbox" id="hp_featured[]" value="' $category_details['category_id'] . '" (($category_details['hp_featured']) ? 'checked' : '') . '>' : '' ) . '</td>' : ''):'). 
            hier zwischen soll soll also der o.g. PHP Code
            PHP-Code:
            $categories_page_content .= (($table_name == 'categories') ? '<td align="center"> '.
                        
            '<input name="hidden[]" type="checkbox" id="hidden[]" value="' $category_details['category_id'] . '" ' . (($category_details['hidden']==1) ? 'checked' '') . '></td>'.
                        
            '<td align="center"><input name="sample[]" type="checkbox" id="sample[]" value="' $category_details['category_id'] . '" ' . (($category_details['sample']==1) ? 'checked' '') . '></td>' '').
                        
            '<td align="center"><input name="automotive[]" type="checkbox" id="automotive[]" value="' $category_details['category_id'] . '" ' . (($category_details['automotive']==1) ? 'checked' '') . '></td> '.
                  
            /////  DAZWISCHEN IST HIER <<<------------------------------------------------ \\\\\
                  
            '<td align="center"><input name="delete[]" type="checkbox" id="delete[]" value="' $category_details['category_id'] . '"></td> '.
                  
            '<td>&nbsp;</td>'.
                  
            '</tr> '
            D.h. also es wird eine Befehlskette durchlaufen und alle Optionen aufmal geprüft und nicht einzeln.

            Darum geht es im eigentlichen.
            Das Problem ist, das diese Zeile nicht einfach eingefügt werden kann, vermutlich, da diese den kompletten Befehl vorzeitig abschließt.
            Nur finde ich den Fehler einfach nicht. Mit der Zeit wird man hin und wieder Betriebsblind, wenn man den ganze Tag drauf schaut.
            Und genau dieses Problem habe ich gerade. Und ohne diese Zeile, läuft die Modifikation einfach nicht (On/Off)

            Ich hoffe das war nun Präzise genug.

            Vielen Dank

            Kommentar


            • #7
              Leider auch hier, selbes resultat, Seite der Kategorien bleibt weiß.
              Aktiviere error_reporting, das an den Beginn des Scriptes:

              PHP-Code:
              error_reporting(-1);
              ini_set('display_errors'1); 
              Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
              PHP.de Wissenssammlung | Kein Support per PN

              Kommentar


              • #8
                Eins von beiden könnte passen.
                PHP-Code:
                $categories_page_content .= 
                    (
                        (
                $table_name == 'categories')
                            ?    
                '<td align="center"> ' 
                                
                '<input name="hidden[]" type="checkbox" id="hidden[]" value="' $category_details['category_id'] . '" ' . (($category_details['hidden']==1) ? 'checked' '') . '></td>'.
                                
                '<td align="center"><input name="sample[]" type="checkbox" id="sample[]" value="' $category_details['category_id'] . '" ' . (($category_details['sample']==1) ? 'checked' '') . '></td>'
                            
                :    ''
                    
                ) .
                        
                '<td align="center"><input name="automotive[]" type="checkbox" id="automotive[]" value="' $category_details['category_id'] . '" ' . (($category_details['automotive']==1) ? 'checked' '') . '></td> ' .
                        
                '<td align="center"><input name="sample[]" type="checkbox" id="sample[]" value="' . (($category_details['parent_id']==0)?'<td align="center">' . (($category_details['user_id']==0)?'<input name="hp_featured[]" type="checkbox" id="hp_featured[]" value="'.$category_details['category_id'].'"'.(($category_details['hp_featured'])?'checked':'').'>':'').'</td>':'') . '" />' .
                        
                '<td align="center"><input name="delete[]" type="checkbox" id="delete[]" value="' $category_details['category_id'] . '"></td> ' '<td>&nbsp;</td>' '</tr> '
                PHP-Code:
                $categories_page_content .= 
                    (
                        (
                $table_name == 'categories')
                            ?    
                '<td align="center"> ' 
                                
                '<input name="hidden[]" type="checkbox" id="hidden[]" value="' $category_details['category_id'] . '" ' . (($category_details['hidden']==1) ? 'checked' '') . '></td>'.
                                
                '<td align="center"><input name="sample[]" type="checkbox" id="sample[]" value="' $category_details['category_id'] . '" ' . (($category_details['sample']==1) ? 'checked' '') . '></td>'
                            
                :    ''
                    
                ) .
                        
                '<td align="center"><input name="automotive[]" type="checkbox" id="automotive[]" value="' $category_details['category_id'] . '" ' . (($category_details['automotive']==1) ? 'checked' '') . '></td> ' .
                        
                '<td align="center"><td align="center"><input name="sample[]" type="checkbox" id="sample[]" value="' $category_details['category_id'] . '" ' . (($category_details['sample']==1) ? 'checked' '') . '></td>' '') .
                        
                '<td align="center"><input name="delete[]" type="checkbox" id="delete[]" value="' $category_details['category_id'] . '"></td> ' '<td>&nbsp;</td>' '</tr> '
                Allerdings gebe ich Istegelitz vollkommen recht und empfehle Dir ebenfalls den Hinweis von hausl.
                Competence-Center -> Enjoy the Informatrix
                PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                Kommentar


                • #9
                  Hallo wehrtes Helferlein.

                  Danke danke. Der zweite Vorschlag ist soweit ok, wobei zunächst der erste spontan richtiger aussah.
                  Jedoch habe ich nun 2 checkboxen und 2x davon sample.
                  1x Sample jedoch nun in der featured option.

                  Kommentar


                  • #10
                    featured ist abhängig von $category_details['user_id']==0, das wird nicht zutreffen, nehme ich an.
                    Du solltest schon verstehen, was da passiert, wenn Du es selbst hinbekommen willst.
                    Ansonsten wirst Du wohl die Stunde des Programmierers zahlen müssen...
                    Competence-Center -> Enjoy the Informatrix
                    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                    Kommentar


                    • #11
                      Zitat von hausl Beitrag anzeigen
                      Aktiviere error_reporting, das an den Beginn des Scriptes:

                      PHP-Code:
                      error_reporting(-1);
                      ini_set('display_errors'1); 
                      Fehlerlogs werden angelegt vom Server.
                      Steht jedoch nichts wichtiges drinne ausser, das ich manche sprachvariable doppelt und dreifach habe

                      Kommentar


                      • #12
                        Zitat von Arne Drews Beitrag anzeigen
                        featured ist abhängig von $category_details['user_id']==0, das wird nicht zutreffen, nehme ich an.
                        Du solltest schon verstehen, was da passiert, wenn Du es selbst hinbekommen willst.
                        Ansonsten wirst Du wohl die Stunde des Programmierers zahlen müssen...
                        Ich habe gerade Programmierer gefunden, die Arbeiten für 19.- die Stunde.
                        Die werden bestimmt eher wissen, was Sie tun.

                        Trotzdem danke

                        Kommentar


                        • #13
                          Ich habe gerade Programmierer gefunden, die Arbeiten für 19.- die Stunde.
                          Jo, nennt man in Fachkreisen ScriptKiddies... Aber egal, wenn Dein Problem damit gelöst ist, dann Glückwunsch...
                          Competence-Center -> Enjoy the Informatrix
                          PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                          Kommentar

                          Lädt...
                          X