mysql Query is logisch richtig aber wird als leer angezeigt

tholmer

Mitglied
hello

Ich hab ein Problem an dem ich jetzt schon 2 tage hänge. Ich hab mir ein News Script gebastelt welches die News in eine mysql DB speichert (id(auto),headline,text,time) und nun wollte ich eine neue Funktion hinzufügen mit der ich die Einträge nachbearbeiten kann. PHP mach ich jetzt seit ca. einem Monat. Ich hab hier auch schon alles mögliche durchgelesen was damit zu tun haben könnte, aber erfolglos... hier mein Problem:

PHP:
<?php
 //ddatei für die zugangsdaten von meiner DB... das ... auf jeden fall
  include ("../../gallery/inc.mysql.php");
  if(!isset ($_REQUEST["submit"]))
  {
?>
<html>
<head>
  <title>Clubseite - Adminbereich</title>
</head>
<body>
<h1>News bearbeiten</h1>
<form action="<?=$PHP_SELF?>" method="post">
<table width="100%" border="1">
  <tr>
    <th>&nbsp;</th>
    <th>ID</th>
    <th>Headline</th>
  </tr>
<?
$sql = "SELECT * FROM club_news ORDER BY id";
$res = mysql_query($sql);

while($news = mysql_fetch_object($res))
{
echo '<tr>
        <td><input type="radio" name="news" value="'.$news->id.'"></td>
        <td>'.$news->id.'</td>
        <td>'.$news->headline.'</td>
      </tr>';
}
?>
  <tr>
    <td colspan="3"><input type="submit" name="submit" value="Bearbeiten">
  </tr>
</table>
</form>
</body>
</html>
<? }else
{
$id = $_REQUEST["news"];
//test ob die id stimmt... und sie stimmt immer
echo $id;
$sql = "SELECT * FROM club_news WHERE id = $id";
$res = mysql_query($res);
//Error meldet das der Query leer ist
echo mysql_error();
$news = mysql_fetch_object($res);
?>
<html>
<head>
  <title>Clubseite - Adminbereich</title>
</head>
<body>
<table>
<form action="<? echo $PHP_SELF ?>" method="post" name="newsform" onSubmit="return checkform()">
  <tr>
    <td>Überschrift:</td>
    <td>
    <input type="text" name="headline" maxlen="100" size="70" value="<?=$news->headline ?>" />
    </td>
  </tr>
  <tr>
    <td>
    News:
    </td>
    <td>
      <textarea cols="70" name="text" rows="5"><?=$news->text ?></textarea>
    </td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><input type="submit" name="senden" value="Senden" /></td>
  </tr>
  </form>
</table>
</body>
</html>
<? } ?>

Ich habe ein Formular mit Radiobuttons... da wähle ich aus welche News ich editieren möchte (die haben gleich den Wert der id damit ich es leichter weiterverarbeiten kann)... Ich sende das Formular und dann kommt der Fehler:

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\Webserver\home\clubseite\admin\layout\news_edit.php on line 47

Aber das kann doch nicht sein... Es gibt den Datensatz mit der ID in der Tabelle. Ich lass mir auch die ID ausgeben und sie stimmt mit der überein welche ich ausgewählt habe. Ich hab auch schon alles versucht in der zeile -> $sql = "SELECT * FROM club_news WHERE id = $id"; irgendwie as umzuschreiben... etwa ...WHERE id = '$id' oder `id` = $id und alles was es noch so gibt ^^

aber immer wieder kommt der fehler... ich hoffe mir kann einer helfen
 
Der Einzig logische Schluss würde sich mir daraus ergeben, dass entweder die Tabelle club_news oder die Spalte id nicht existiert. Aber ich denke, dass dies nicht der Fall ist.

Hast du schon versucht, die Ergebnisse nicht als Objekt, sondern als Feld zu benhandeln?
 
ich bin doch so ein idiot... das geht ja gar net... danke erstmal... ich beiß mir hier die zähne aus und dann isses nur so ein mist... naja egal danke es funktioniert :)
 
Zurück