ilch Forum » Ilch Clan 1.1 » Fehlersuche und Probleme » News Extended 1.4c Backend Fehler

Geschlossen
  1. #1
    User Pic
    CiSeN Mitglied
    Registriert seit
    06.01.2010
    Beiträge
    58
    Beitragswertungen
    1 Beitragspunkte
    Mal wieder ein freundliches Hallo meinerseits in die Runde,

    mir ist ein kleiner Fehler im News Extended 1.4c aufgefallen. Hab auch schon die SuFu missbraucht, die mir aber nichts passendes ausgespuckt hatte.
    Und zwar geht es darum wenn man versucht eine News zu erstellen, die im Titel ein Apostroph oder auch ' genannt versucht zu verwenden; dann kommt nach dem absenden folgende Fehlermeldung:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    MySQL Error:
    1064 : You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 's',1,FROM_UNIXTIME(1469658903),1023,0,'','','0',1469658840,0,NULL)' at line 2
    in Query:
    INSERT INTO `ic1_news` (news_title,user_id,news_time,news_recht,news_groups,news_kat,news_text,html,`show`,archiv,endtime) VALUES ('Assassin's',1,FROM_UNIXTIME(1469658903),1023,0,'','','0',1469658840,0,NULL)
     
    Debug backtrace:
        @ mysql.php:46 -- debug_bt()
        @ mysql.php:64 -- db_check_error(...)
        @ news.php:191 -- db_query(...)
        @ admin.php:20 -- require_once(...)


    Wenn man die news ohne ' schreibt und anschließend über "bearbeiten" den Titel anpasst funktioniert es einwandfrei; auch wenn man eine News einsendet kann man das Sonderzeichen verwenden. Nur halt nicht bei direkter Newserstellung.

    Vielleicht weiß ja einer unter euch Rat, wie man das Problem gelöst bekommt. Meine php-Kenntnisse sind in der Hinsicht leider einfach zu bescheiden.

    ich poste einfach mal die admin/news.php, um den Code direkt vor Augen zu haben:




    verwendete ilch Version: 1.1 P

    betroffene Homepage: externer Link


    Zuletzt modifiziert von CiSeN am 28.07.2016 - 01:04:00
    Bombing For Peace Is Like Fu**ing For Virginity !!!
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Könnte daran liegen weil es beim Update escapet wird und beim einfügen also into nicht zwinker
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    CiSeN Mitglied
    Registriert seit
    06.01.2010
    Beiträge
    58
    Beitragswertungen
    1 Beitragspunkte
    Hallo Siggi,

    danke für die richtungsweisung... Heißt das, dass ich die dazugehörigen values angleichen muss oder wie muss ich das machen?
    Bombing For Peace Is Like Fu**ing For Virginity !!!
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Du änderst einfach in Zeile 191 $_POST['titel'] zu escape($_POST['titel'], 'string')
    1 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    CiSeN Mitglied
    Registriert seit
    06.01.2010
    Beiträge
    58
    Beitragswertungen
    1 Beitragspunkte
    Danke dir.

    Da war ich ja beim richtigen Ansatz. Allerdings hätte ich jetzt alle angepasst.

    Vielen Dank!
    Bombing For Peace Is Like Fu**ing For Virginity !!!
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    CiSeN Mitglied
    Registriert seit
    06.01.2010
    Beiträge
    58
    Beitragswertungen
    1 Beitragspunkte
    Jetzt hätte ich nochmal ein kleine Zusatzfrage, möchte dafür jetzt aber nicht extra einen neuen Thread eröffnen; deswegen knalle ich es einfach mal hier mit rein.
    Und zwar habe ich "ein wenig" am News Script rumgebastelt und daraus ein zusätzliches Artikelsystem gemacht.
    Nun habe ich darin ein Feld eingebaut, das einem anzeigen soll, ob ein Text zum Download bereit steht oder nicht.
    Was ich genau meine kann man hier sehen.

    Die Sache würde ich gerne per if-Abfrage einbauen, der (ich hoffe, dass er korrekt ist) so aussehen soll:
    1
    2
    3
    4
    5
    6
    7
    if (!empty($row['articles_download']))
    {
        $download = "<a href="?downloads-show-'.$row['articles_download'].'">vorhanden</a>";
    }
    else
    {
        $download = "nicht vorhanden";


    Jetzt stellt sich mir nur die Frage, an welcher Stelle ich in contents/articles/articles.php einbauen muss.



    Erneute Hilfe dazu wäre echt klasse. Danke schonmal
    Bombing For Peace Is Like Fu**ing For Virginity !!!
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Ich würde es mal vor Zeile 347 einfügen, dadrunter im array gibt er es ja aus
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    CiSeN Mitglied
    Registriert seit
    06.01.2010
    Beiträge
    58
    Beitragswertungen
    1 Beitragspunkte
    Jetzt habe ich Parse error: traurig

    Parse error: syntax error, unexpected 'articles_download' (T_STRING) in /users/cisen/www/include/contents/articles/articles.php on line 349
    Bombing For Peace Is Like Fu**ing For Virginity !!!
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Siggi Hall Of Fame
    Registriert seit
    08.02.2007
    Beiträge
    6.558
    Beitragswertungen
    327 Beitragspunkte
    Und wenn du es hiermit versuchst?
    1
    2
    3
    4
    5
    if (!empty($row->articles_download)) {
        $download = '<a href="?downloads-show-'.$row->articles_download.'"vorhanden</a>';
    } else {
        $download = 'nicht vorhanden';
    }



    Zuletzt modifiziert von Siggi am 28.07.2016 - 13:54:23
    1 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    CiSeN Mitglied
    Registriert seit
    06.01.2010
    Beiträge
    58
    Beitragswertungen
    1 Beitragspunkte
    Das hat geklappt.

    Vielen lieben Dank!!!
    Bombing For Peace Is Like Fu**ing For Virginity !!!
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten