Beiträge von jdgf

    Hallo Christiane,
    danke für deine Hilfe.


    Zitat

    jdgf willst du deine Datenbankstruktur posten? Dann könnte man dir gezielter helfen und dein Query exakt zusammenbauen.


    Es ist eigentlich nur eine Tabelle, bestehend aus vier Spalten (id, text, autor, datum).


    Zitat

    Du machst zuerst ein Select, dann ein update. Stehen die beiden in einem Zusammenhang? Machst du das Select um dann irgendwas mit den Daten zu machen und machst später ein update? Oder möchtest du nur ein Update machen?


    Die Spalten 1 bis 3 (id, text und autor) der Tabelle ändern sich nicht. Die vierte Spalte 'datum' dient dazu, sicherzustellen, dass nicht an zweimal derselbe Text veröffentlicht wird.
    Mit dem der Select-Anweisung wird überprüft, ob die Datumsspalte leer ist. Für diesen Fall wird zum Beispiel der Text A veröffentlicht und anschließend in die vierte Spalte das Tagesdatum mit "Update" eingetragen werden. Dadurch kann dieser Text beim nächsten Mal nicht mehr veröffentlicht werden.

    Hallo,


    ich will in meinem Code einen zufälligen Datenbankeintrag auslesen, dessen Datumsspalte leer ist und
    anschließend in die Datumsspalte das Tagesdatum mit "update" eintragen.


    Kann ich bei der Abfrage nach der leeren Zelle IS NULL oder == " " verwenden?
    Fügt JDatabase automatisch danach das Datum in den aktuellen Datensatz ein oder muss ich den
    Datensatz erneut mit "select" bestimmen?



    Gruß Dietmar

    Da die Worte mit den "fehlerhaften" Zeichen nicht von der Datenbank eingefügt wurden, habe ich den Code in meinen Script entsprechend abgeändert:

    Code
    echo ' ihren Namenstag feiern. Herzlichen Glückwunsch!  In der Landesprache sagt man: Všechno nejlepši k svátku!

    @later


    Hallo,
    ich habe deine Anleitung umgesetzt und das Modul NameDayTest wird richtig angezeigt. Vielen Dank :)


    Es gibt nur ein Problem mit den Umlauten, die anstelle des Umlauts mit Fragezeichen erscheinen.
    Ich verwende jetzt aber JDatabase und als größter Vorteil ist mir genannt worden, dass es hier keinen Zeichenprobleme gibt.
    Woher können die jetzt kommen?


    Gruß Dietmar

    @later


    Zitat

    Mir kommen generell die meisten Pfadangaben in den Meldungen komisch vor. Oder hast du die gekürzt?


    Ich habe nur hier zwischen den zwei aufeinanderfolgenden // Zeichen eine Buchstabenkombination entfernt, die auf den
    Namen des Webusers hinweist. Sie gehört zur Pfadangabe zur Joomlainstallation.


    Zitat

    Hm, fällt mir nur noch ein, vor Zeile 21 eingeben: echo JPATH_SITE."/tmp";exit;


    Wenn ich diese Zeile in der index.php des Templates eingebe, wird eine leere Seite mit der Pfadangabe

    Code
    /var/www/.../html/tmp

    angezeigt. Anstelle der Pünktchen steht wieder der Nutzername.

    Zitat

    Also prüfe, ob das Joomla-tmp-Verzeichnis beschreibbar ist für Joomla.


    tmp-Ordner und die nächste Ebene haben die Rechte 755

    Zitat

    Poste die paar Zeilen unter System > Systeminformationen > Reiter Systeminformationen, ob CGI aktiviert ist.


    PHP erstellt für Linux alfa3059 4.4.6-040406-generic #201603161231 SMP Wed Mar 16 16:33:41 UTC 2016 x86_64
    Datenbankversion 5.5.47-0+deb8u1
    Datenbankzeichensatz latin1_german1_ci
    Datenbankverbindungszeichensatz utf8mb4_general_ci
    PHP-Version 5.6.24
    Webserver Apache
    PHP-Interface für den Webserver cgi-fcgi
    Joomla!-Version Joomla! 3.6.2 Stable [ Noether ] 4-August-2016 23:41 GMT
    Joomla!-Plattform-Version Joomla Platform 13.1.0 Stable [ Curiosity ] 24-Apr-2013 00:00 GMT
    Browsererkennung Mozilla/5.0 (Windows NT 6.1; rv:47.0) Gecko/20100101 Firefox/47.0

    Zitat


    Deaktiviere den FTP-Modus in Joomla, solltest du ihn aktiviert haben.


    war deaktiviert

    Hallo,


    auf einer Webseite setze ich Flexi Custom Code ein. Sie Module sind jetzt nicht mehr sichtbar,
    Seit Donnerstag habe ich Probleme. Wenn ich die maximale Fehleranzeige aktiviere, werden Fehler in der helper-Datei ab Zeile 20 bis 26 angezeigt:

    Code
    Zeile 19 class modFlexiCustomCode {                Zeile 20 public static function parsePHPviaFile($codearea) {                        Zeile 21 $tmpfname = tempnam(JPATH_SITE."/tmp", "html");                        Zeile 22 $handle = fopen($tmpfname, "w");                        Zeile 23 fwrite($handle, $codearea, strlen($codearea));                        Zeile 24 fclose($handle);                        Zeile 25 include_once($tmpfname);                        Zeile 26 unlink($tmpfname);                Zeile 27 }


    Die Fehlermeldungen:


    Kann mir jemand helfen.
    Gruß Dietmar

    In der Abfrage der Namenstage kann jeden Tag eine unterschiedliche Zahl an Namenstagen
    auftreten. Deshalb soll die Ausgabe so aussehen, dass vor dem letzten Namenstag ein "und"
    eingefügt wird, ansonsten immer ein Komma. Für die Abfrage habe ich bisher den nachfolgenden
    Code verwendet. Dabei musste ich die Variable $i=0; einführen, die das Script hochzählen soll, bis
    es die maximale Anzahl (=Variable $anzahl bzw. $count) erreicht.


    Es führt aber zu einer Fehlermeldung. Daher meine Fragen:


    Kann man bei JDatabase eine Variable einfügen?
    Was ist an dem nachfolgenden Code falsch?



    Code
    if ($i < ($anzahl-1))           {                   if ($i < ($anzahl-2))                   {                   echo ', ';                   }                   else                   {                   echo ' und ';                   }                }                $i++;   }


    Die Variable $anzahl habe ich durch $count ersetzt, da ich mit dem Code

    Code
    //Anzahl N-Tage ermittlen:
    $db->setQuery($query);
    $db->query();
    $count= $db->getNumRows();
    echo $count;


    die Anzahl der Namenstage ermittelt habe. Diese wird richtig unter "Namenstage 2"
    angezeigt.


    Gruß Dietmar

    Hallo,


    gibt es eine Übersicht über die Befehle, die man bei JDatabase benutzen kann.
    Ich möchte den Mysql-Code entsprechend umschreiben: Zum Bsp: <>, <, >, =


    Code
    //Datensätze auf NULL setzen, falls alle Felder in Spalte datum belegt
    $testNull="SELECT datumpage FROM test WHERE datumpage<>0";
    $res=mysql_query($testNull);
    $num = mysql_num_rows($res);
    if (($menge - 6) < $num) {
    $ziel = "UPDATE witz SET datumpage=0 WHERE datumpage >0 AND datumpage <> $gestern";
    $tor = mysql_query($ziel);
    $ziel2 = "UPDATE test SET datum=0 WHERE datum >0 AND datum <> $gestern";
    $tor2 = mysql_query($ziel2);
    }


    Gruß Dietmar

    Bei Mysql hatte ich es so formatiert:

    Code
    echo "<p class=\"strong\">$row->jahr</p><p class=\"standard\">$row->text</p><br>";echo "<p style=\"margin-top:15px\"><strong style=\"padding-right:10px; color:red\">".$dsatz["jahr"]."</strong><span style=\"color: #003399; font-weight:700;\">".$dsatz["name"]."</span></p><p style=\"text-align:justify\">".$dsatz["text"]."</p>";   }


    Mit der Suche habe ich den Hinweis gefunden, aber damit komme ich nicht weiter.


    Zu Zeit sieht es so aus:

    Zitat

    Array ( [0] => Array ( [0] => 1958 [1] => Karlheinz Förster [2] => (in Unterschwarzbach/Odenwald) deutscher Fußballspieler. Gilt als einer der besten Abwehrspieler der Welt. )


    Es sollte aber so aussehen:

    Zitat

    1958 Karlheinz Förster
    (in Unterschwarzbach/Odenwald) deutscher Fußballspieler. Gilt als einer der besten Abwehrspieler der Welt.


    Ich habe es so versucht, aber es wird nichts angezeigt.

    Code
    foreach( $rows as $row ) {
        echo $row->jahr;
        echo $row->name;
        echo $row->text;
    }