Problem und Frage mit dem NewssystemForum » Tutorials » Help » Problem und Frage mit dem Newssystem
-
25.04.2014 um 12:43 Uhr
Huhu meine Lieben,
ich brin gerade dabei meine Seite wieder aufzubauen und wollte das Newssystemverwenden. Nun fehlt mir persnlich ein extra Eingabefeld fr die Updates, welches ich in der DB-Tabelle eingetragen habe und die post_news.php habe ich auch dementsprechend angepasst, nun sagt mir das Script jedes Mal wenn ich die News abschicken mchte, dass es ein Error geben mit folgenden Text:
Error ...
Der Eintrag war leider nicht erfolgreich! ".mysql_error()."
Meine post_news.php sieht so aus:
<?php // post_news.php include('header.php'); // header einbunden //------------------------------------------------------------------------------ if(isset($_GET['id'])){ // Sofern ID uebergeben wurde $id = clean_it($_GET['id']); // Variable definieren // DB Abfrage der Daten $abfrage = mysql_query("SELECT title, news, update, cat FROM news WHERE id='$id'"); $row = mysql_fetch_object($abfrage); } //------------------------------------------------------------------------------ // Newseintrag loeschen //------------------------------------------------------------------------------ isset($_GET['action']) ? $action = clean_it($_GET['action']) : $action = ''; // Variable definieren if($action == 'loeschen'){ // Artikel loeschen $delete = mysql_query("DELETE FROM news WHERE id='$id'"); // Kommentare zu diesem Artikel loeschen $delete_com = mysql_query("DELETE FROM comments WHERE news_id='$id'"); if($delete AND $delete_com){ // Wenn Loeschung nicht erfolgt header("Location: admin.php"); // Weiterleitung }else{ // Wenn Eintrag nicht geloescht wurde => Fehlermeldung echo get_error('Der Eintrag konnte leider nicht geloescht werden! ".mysql_error()."'); } } //------------------------------------------------------------------------------ // Formular auswerten //------------------------------------------------------------------------------ if(isset($_POST['submit'])){ // Sofern Eintragen gedrueckt $title = clean_it($_POST['title']); // Variable definieren $news = clean_it($_POST['news']); // Variable definieren $update = clean_it($_POST['update']); // Variable definieren $autor = clean_it($_SESSION['user']); // Variable definieren if(empty($title) || empty($news) || empty($update) || empty($autor)){ // pruefen ob alles ausgefuellt wurde echo get_error('Bitte alle benoetigten Felder ausfuellen!'); }else{ // wenn alles ausgefuellt wurde // Kategorien if(empty($_POST['new_cat'])){$cat = clean_it($_POST['cat']);}else{$cat = clean_it($_POST['new_cat']);} if(($_GET['action']) == 'edit'){ // Wenn action == edit $eintragen = mysql_query("UPDATE news SET autor='$autor', title='$title', news='$news', update='$update', cat='$cat' WHERE id='$id' "); }else{ // wenn action = new $eintragen = mysql_query("INSERT INTO news (autor, title, news, update, cat, date) VALUES ('$autor','$title','$news', '$update','$cat', now())"); }// close action if($eintragen){ // Sofern Eintrag geklappt hat header("Location: admin.php"); // Weiterleitung }else{ // Wenn Eintrag nicht geklappt hat => Fehlermeldung echo get_error('Der Eintrag war leider nicht erfolgreich! ".mysql_error()."'); } }// close empty }// close isset //------------------------------------------------------------------------------ if($action == 'edit'){ // Headline fuers Formular ermitteln $headline = "Artikel ".$id." bearbeiten"; }else{ $headline = "Artikel verfassen"; }// close Headline ermitteln //------------------------------------------------------------------------------ // Formular ausgeben //------------------------------------------------------------------------------ ?> <script type="text/javascript"> /* Funtionn BBCode */ var n = 1; function add(code) { document.getElementById('bbcode').news.value += " " + code ; } </script> <form action="" method="post" id="bbcode"> <fieldset> <legend><?php echo $headline; ?></legend> <label>Titel</label> <input type="text" name="title" value="<?php echo $row->title; ?>" /> <br /><br /> <label>Kategorie</label> <?php // wenn vorhandene - Kategorien auslesen $query = mysql_query("SELECT DISTINCT cat FROM news WHERE cat != ''"); if(mysql_num_rows($query) != '0'){ echo "<select name=\"cat\" size=\"1\">\n"; echo "<option value=\"\">Kategorie waehlen</option>"; echo "<option value=\"\">---------------------</option>"; while($rows = mysql_fetch_object($query)){ echo "<option value=\"".$rows->cat."\">".$rows->cat."</option>"; } echo "</select><br />\n"; } ?> <input name="new_cat" type="text" value="<?php echo $row->cat;?>"/> <small>Neue Kategorie erstellen</small> <br /><br /> <?php get_bbcode('admin'); /* BBCode ausgeben */ ?> <textarea rows="10" cols="85" name="news"><?php echo $row->news;?></textarea> <br /><br /> <textarea rows="5" cols="85" name="update"><?php echo $row->update;?></textarea> <br /><br /> <input type="submit" value="Eintragen" name="submit" class="button"/> </fieldset> </form> <?php include('footer.php'); ?>
Was hab ich denn jetzt falsch gemacht, oder ist mir irgendwo ein Semikolon verloren gegangen?
Wre schn, wenn mir jemand helfen knnte.
Aber dann noch zu meinen Fragen.
Ich mchte gerne das DownloadScript und die Messagebox verwenden und das ganze ber die admin.php des Newssystems verwalten, was muss ich denn dafr machen oder ist das nicht mglich?
Liebe Gre
Katjana
-
28.04.2014 um 09:18 Uhr
Hallo Katjana,
mhhh, ich bin zwar nur mit dem Handy online und hab dadurch jetzt nicht den 'super' Ueberblick,
aber auf die Schnelle hab ich keinen Fehler sehen koennen...
Geht es denn jetzt mittlerweile?
Wenn nicht aendern mal Zeile 71 - 73 wie folgt ab und schau mal, welcher Fehler genau gemeldet wird:
}else{ // Wenn Eintrag nicht geklappt hat => Fehlermeldung echo get_error('Der Eintrag war leider nicht erfolgreich! '); echo mysql_error(); }
Ich mchte gerne das DownloadScript und die Messagebox verwenden und das ganze ber die admin.php des Newssystems verwalten, was muss ich denn dafr machen oder ist das nicht mglich?
Das muesst eigentlich relativ leicht zu bewerkstelligen sein, da der Aufbau sich nicht gross unterscheidet ...
Liebe Gruesse
Alice... { signatur } ... -
28.04.2014 um 10:27 Uhr
Dankeschn, diese genannte Fehlermeldung ist nun weg,
aber jetzt ist er am meckern, dass nicht alle Felder ausgefllt werden,
obwohl ich es machen... :/
Jetzt sieht die Fehlermeldung so aus:
Error ...
Der Eintrag war leider nicht erfolgreich!
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 'update, cat, date) VALUES ('Katjana','Huhu','Huhu', 'huhu','General', now())' at line 1
Heit das jetzt ich hab eeinen Reihenfolgefehler?
Mein Tabelle ist so aufgebaut:
id ->autor -> title ->cat->news->update->date (von oben nach unten)
Der code ist der selbe, bisauf die kleine nderung von dir in den zeilen 71 -73.
Danke schonmal im Voraus.
LG Katjana
-
02.05.2014 um 13:49 Uhr
Hallo Katjana,
mhhh, mach dir doch bitte mal den Spass und gibt der Spalte update mal eine andere Bezeichnung - NICHT update.
Vielleicht liegt es auch einfach nur an der Spaltenbezeichnung, dass das nicht funktioniert.
Der UPDATE Befehl wird ja in der Regel dazu benutzt Werte in einer Tabelle zu aendern
Denn am Code an sich ist nichts falsch, es sei denn ich habe Tomaten auf den Augen!
Liebe Gruesse
Alice
... { signatur } ... -
04.05.2014 um 10:38 Uhr
Sowas banales...damit htte ich echt nicht gerechnet, dass die Bezeichung der Spalte daran schuld ist... Dankeschn fr deine Hilfe.
Dann versuch ich mich jetzt daran den Download-Manager an das newssystem anzupassen. Bei Problemen darf ich dich bestimmt nochmal belstigen?
Liebe Gre
Katjana
-
09.05.2014 um 08:50 Uhr
Manchmal sind es nur so Kleinigkeiten, da kommt man dann im ersten Moment nicht wirklich drauf.
Klar, bei Problemen einfach schreien! =)
Liebe Gruesse
Alice... { signatur } ... -
24.12.2015 um 14:59 Uhr
Mich hat diese Kleinigkeit auch bei meinem Projekt fr mehrere Studen gestoppt. Sehr wertvolle Erklrungen.
-
25.05.2016 um 12:09 Uhr
Hallo
Ich wollte mich jetzt auch ans Newssystem setzen und habe erst einmal alles testen wollen. Bis auf die Angaben zur Datenbank habe ich noch nichts abgendert. Als ich einen Newsartikel eingeben wollte, kam bei mir auch die Fehlermeldung, dass nicht alle Felder ausgefllt seien, obwohl ich das bercksichtigt habe. Dann ist mir aufgefallen, dass nur sehr kurze Beitrge (also im Textfeld), um die 2 Zeilen, angenommen werden, lngere aber nicht. Unter post_news.php habe ich besagte Fehlermeldung gefunden, aber mir ist nichts aufgefallen, was die Eingabemglichkeit beschrnken wrde. Leider wei ich auch gerade nicht so genau, wonach ich suchen soll.
Vielleicht eine Idee?
Edit: Dasselbe Problem ist auch bei den Kommentaren aufgetreten.
Liebe Gre,
Naomi
Der Beitrag wurde insgesamt 1 mal editiert, zuletzt 25.05.2016 um 12:11 Uhr ...