• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

MySQL Eintrag Editor

  • Ersteller Ersteller matibaski
  • Erstellt am Erstellt am
Status
Für weitere Antworten geschlossen.
M

matibaski

Guest
Moin!
Habe mein erstes Problem gelöst.
Nun habe ich folgenden Code:
PHP:
<?php
// Vorhandene Beiträge als Liste ausgeben
include"verbindung.php";
$sql = "SELECT
            ID,
            Autor,
            Titel,
            Inhalt,
            Datum
        FROM
            News
        ORDER BY
            Datum DESC;";
            
$result = mysql_query($sql) OR die(mysql_error());

echo "Vorhandene Einträge:<br><br>\n";
if(mysql_num_rows($result))
 {
  while($row = mysql_fetch_assoc($result))
 {
  echo $row['Autor'].'&nbsp;-&nbsp;'.$row['Datum']." &gt; ".$row['Titel'].'  -  <a href=admin.php?site=editnews&delete='.$row['ID'].'>Löschen</a> - <a href=admin.php?site=editnews&edit='.$row['ID'].'>Editieren</a>';
  
  if(!isset($_GET['delete']))
  {
  echo'';
  }
  else
  {
   if($_GET['delete'] == $row['ID'])
   {
    $delete = "DELETE FROM
                   News
               WHERE
                   ID= '".$row['ID']."'";
                 
    mysql_query($delete) OR die(mysql_error());
   }
  }
 }
 }
 else
 {
  echo'Es sind keine Newseinträge vorhanden';
 }
if(isset($_GET['delete']))
{
 echo"<script>top.location.href='admin.php?site=editnews'</script>";
}
// --------------------------------------------------- ENDE ------------------------------------
echo'<hr>';
// Feld

$aendern = "SELECT
                ID,
                Autor,
                Titel,
                Inhalt,
                Datum
            FROM
                News
            ORDER BY
                Datum DESC;";
            
$result = mysql_query($sql) OR die(mysql_error());

if(!isset($_GET['edit']))
{
 echo'Wähle einen Beitrag aus';
}
else
{
 if(mysql_num_rows($result))
 {
 $row = mysql_fetch_assoc($aendern);
 
 echo'<script language="javascript" href="addnews/editor.js">';
 echo'<form name="Formular" action="admin.php?site=editnewsgo" target="_top" method="post">';
 echo'<hr>';
 echo'<p>Editor: (Wird noch erweitert)<br>';
 echo'<br>Codetags:</p>';
 echo "<input type=\"button\" value=\"Kursiv\" onClick=\"formatText('i')\"><br>"; 
 echo "<input type=\"button\" value=\"Unterstrichen\" onClick=\"formatText('u')\"><br>"; 
 echo "<input type=\"button\" value=\"Fettgedruckt\" onClick=\"formatText('b')\"><br>"; 
 echo'<br><input type="text" value="'.$row['Titel'].'" name="Titel">';
 echo'<p><textarea rows="11" name="text" cols="50">';
 echo $row['Inhalt'];
 echo'</textarea><br>';
 echo'<input type="submit" value="Speichern" name="Send">';
 echo'</form>';
 }
}
?>

Also wenn edit=IDNummer gewählt ist, dann soll der Inhalt der ID in das Textfeld kommen. Wenn edit= nicht gesetzt ist, dann soll kein Textfeld erscheinen und es soll eine Meldung kommen.

Es funktioniert alles perfekt. Wenn ich aber auf Editieren klicke, dann erscheint folgender Fehler:
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/httpd/vhosts/paradoxe.de/subdomains/habboville/httpdocs/mysql/addnews/editnews.php on line 75

Line 75:
PHP:
 if(mysql_num_rows($result))
 {
 $row = mysql_fetch_assoc($aendern);

MfG, matibaski
 
Zuletzt bearbeitet von einem Moderator:
PHP:
$aendern = "SELECT
                ID,
                Autor,
                Titel,
                Inhalt,
                Datum
            FROM
                News
            ORDER BY
                Datum DESC;";
hinter DESC das ; is glaub zieviel...mach das mal weg

und bei
PHP:
$row = mysql_fetch_assoc($aendern);
muss doch $result rein und net $aendern
 
Nein, das Semikolon ist richtig, so schließt man einen Sql Befehl ab.
das mit aendern stimmt, außerdem fehlt die while schleife.
 
Alti schrieb:
außerdem fehlt die while schleife.

Ich möchte ja nur eine "Zeile" öffnen. Muss man dazu auch eine Schleife machen`?

Nunja. Mach ich mal

MfG, matibaski

edit:
Habe den Code nun so, doch es erscheint ein Error.
Code:
PHP:
<?php
// Vorhandene Beiträge als Liste ausgeben
include"verbindung.php";
$sql = "SELECT
            ID,
            Autor,
            Titel,
            Inhalt,
            Datum
        FROM
            News
        ORDER BY
            Datum DESC;";
            
$result = mysql_query($sql) OR die(mysql_error());

echo "Vorhandene Einträge:<br><br>\n";
if(mysql_num_rows($result))
 {
  while($row = mysql_fetch_assoc($result))
 {
  echo $row['Autor'].'&nbsp;-&nbsp;'.$row['Datum']." &gt; ".$row['Titel'].'  -  <a href=admin.php?site=editnews&delete='.$row['ID'].'>Löschen</a> - <a href=admin.php?site=editnews&edit='.$row['ID'].'>Editieren</a>';
  
  if(!isset($_GET['delete']))
  {
  echo'';
  }
  else
  {
   if($_GET['delete'] == $row['ID'])
   {
    $delete = "DELETE FROM
                   News
               WHERE
                   ID= '".$row['ID']."'";
                 
    mysql_query($delete) OR die(mysql_error());
   }
  }
 }
 }
 else
 {
  echo'Es sind keine Newseinträge vorhanden';
 }
if(isset($_GET['delete']))
{
 echo"<script>top.location.href='admin.php?site=editnews'</script>";
}
// --------------------------------------------------- ENDE ------------------------------------
echo'<hr>';
// Feld

$aendern = "SELECT
                ID,
                Autor,
                Titel,
                Inhalt,
                Datum
            FROM
                News
            ORDER BY
                Datum DESC;";
            
$result = mysql_query($aendern) OR die(mysql_error());

if(!isset($_GET['edit']))
{
 echo'Wähle einen Beitrag aus!!';
}
else
{
 if(mysql_num_rows($result))
 {
  while($row = mysql_fetch_assoc($result))
 {
 echo'<script language="javascript" href="addnews/editor.js">';
 echo'<form name="Formular" action="admin.php?site=editnewsgo" target="_top" method="post">';
 echo'<hr>';
 echo'<p>Editor: (Wird noch erweitert)<br>';
 echo'<br>Codetags:</p>';
 echo "<input type=\"button\" value=\"Kursiv\" onClick=\"formatText('i')\"><br>"; 
 echo "<input type=\"button\" value=\"Unterstrichen\" onClick=\"formatText('u')\"><br>"; 
 echo "<input type=\"button\" value=\"Fettgedruckt\" onClick=\"formatText('b')\"><br>"; 
 echo'<br><input type="text" value="'.$row['Titel'].'" name="Titel">';
 echo'<p><textarea rows="11" name="text" cols="50">';
 echo $row['Inhalt'];
 echo'</textarea><br>';
 echo'<input type="submit" value="Speichern" name="Send">';
 echo'</form>';
}
?>
Habe nun auch eine Schleife eingebaut. So sollte es ja etwa stimmen.
Aber tut es nicht.

Ich bekomme diesen Fehler:

Parse error: syntax error, unexpected $end in /home/httpd/vhosts/paradoxe.de/subdomains/habboville/httpdocs/mysql/addnews/editnews.php on line 92

Doch was für eine Variable habe ich nicht richtig vollendet?

MfG, matibaski
 
Zuletzt bearbeitet von einem Moderator:
Hi

while($row = mysql_fetch_assoc($result))
{
echo
'<script language="javascript" href="addnews/editor.js">'
;
echo
'<form name="Formular" action="admin.php?site=editnewsgo" target="_top" method="post">'
;
echo
'<hr>'
;
echo
'<p>Editor: (Wird noch erweitert)<br>'
;
echo
'<br>Codetags:</p>'
;
echo
"<input type=\"button\" value=\"Kursiv\" onClick=\"formatText('i')\"><br>"
;
echo
"<input type=\"button\" value=\"Unterstrichen\" onClick=\"formatText('u')\"><br>"
;
echo
"<input type=\"button\" value=\"Fettgedruckt\" onClick=\"formatText('b')\"><br>"
;
echo
'<br><input type="text" value="'.$row['Titel'].'" name="Titel">'
;
echo
'<p><textarea rows="11" name="text" cols="50">'
;
echo
$row['Inhalt'
];
echo
'</textarea><br>'
;
echo
'<input type="submit" value="Speichern" name="Send">'
;
echo
'</form>'
;
}


Kuck mal in deine letzte Schleife. Dort fängst du einmal mit Hochkomma an und dann mit Anführungsstriche. Also von der Struktur her würde ich das ändern.

Parse error: syntax error, unexpected $end in /home/httpd/vhosts/paradoxe.de/subdomains/habboville/httpdocs/mysql/addnews/editnews.php on line 92

Zu deiner $end Variable, glaube ich, dass hier die Datei aus irgendwelchem Grund schon vorher beendet wird. Schau mal nach ob du überall keine Semikolans oder geschweifte Klammern vergessen hast, dann sehen wir mal weiter ;-)

gruß eb-88
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben