ID wird zu hoch ausgegeben

Einklappen
Dieses Thema ist geschlossen.
X
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • ID wird zu hoch ausgegeben

    Hallo!
    Ich habe ein Problem bei meinem Forenskript.
    Es wurde nach dem Tutorial von Martin Meyer von mir erstellt. (gibts hier unter Tutorials)


    Es ist so gut wie alles funktionsfähig. Ich habe nur noch ein Problem mit dem Erstellen von Themen.

    Hier einmal die threads.php
    PHP-Code:
    <link rel="stylesheet" type="text/css" href="layout/format.css">
    <?php
    //error_reporting(E_ALL);
    require ('connect.php');
    $abfrage="SELECT id, fid, topic, created from gscp_threads where fid=".$_GET["fid"];
    $ergebnis=mysql_query('$abfrage');
    echo 
    mysql_error($abfrage);
    echo 
    "Aktuelle Themen:<br>";
    while(
    $row mysql_fetch_array($ergebnis))
    {
    echo 
    $row;
    echo 
    "<a href=\"index.php?area=answers&fid=".$row["fid"]."&tid=".$row["id"]."\">";
    echo 
    $row["topic"]."</a><br>";
    }
    echo 
    "<a href=\"index.php?area=newthread&fid=".$_GET["fid"]."\">Neues Thema eröffnen</a>";
    ?>
    wenn ich ein neues Thema hinzufügen möchte springt er zur newthread.php:

    PHP-Code:
    <link rel="stylesheet" type="text/css" href="layout/format.css">
    <?php
    //error_reporting(E_ALL);
    require ('connect.php');

    $nachricht $_POST["nachricht"];
    $topic $_POST["topic"];
    $name $_POST["name"];
    $fid $_POST["fid"];
    ?>
    <form action="newthread.php" method="post">
    <input type="hidden" name="fid" value="<?php echo $_GET["fid"]; ?>">
    Autor: <input name="name" type="text"><br>
    Thema:<input name="topic" type="text"><br>
    Inhalt:<textarea name="nachricht"></textarea><br>
    <input name="abschicken" type="submit">
    </form>
    <?php
    $res 
    =  mysql_query("select max(id) AS max from gscp_threads");
    $row =  mysql_fetch_array($res);
    $thread_id $row["max"];

    if(isset(
    $_POST['abschicken'])){
     
    mysql_query("insert into gscp_answers set text='$nachricht', topic='$topic',
    user='
    $name', fid='$fid', tid='$thread_id', created=now()");
      
    mysql_query("insert into gscp_threads set fid='$fid', topic='$topic', created=now()");
      
    header("location: index.php?area=threads&fid=".$_GET["fid"]);
     exit();
    }
    ?>
    Wenn ich ein Thema im Formular erstellen möchte geben ich irgendwelche Texte in die 3 Formularfelder ein und klicke auf absenden.

    Jedoch erscheint dann ein Error:
    Warning: mysql_fetch_array(): supplied argument is not a valid
    MySQL result resource in ...threads.php on line 9

    Line 9 steht: while($row = mysql_fetch_array($ergebnis))

    Davor geht es aber wunderbar, aber nach dem absenden nicht mehr. Der Eintrag ist auch drin. Die fid stimmt aber die tid ist immer um den Wert 1 höher.

    Ich hab eure Mysql_Error Zeile von dieser Seite dann eingebaut:
    Forenhilfe
    und es kam folgende Meldung:
    Warning: mysql_error(): supplied argument is not a valid MySQL-Link resource in C:\apachefriends\xampp\htdocs\gs\threads.php on line 7
    Aktuelle Themen:

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\apachefriends\xampp\htdocs\gs\threads.php on line 9


    In der newthread.php habe ich am ende 2x nen mysql_query. Ist sowas überhaupt "erlaubt"??

    Hoffe mir kann da jemand einen Tipp geben. Hab Martin Meyer schon angeschrieben und ihm das problem geschildert. Er hat sich die PHP daten angesehen und findet den fehler auch nicht :\

    MfG
    Michael
    Ich weiß was RTFM bedeutet und nutze es auch, aber ab und zu muss ich auch mal was posten

  • #2
    mysql_error Immer wieder schön zu sehen, dass es "Programmierer" gibt, die ganz effe Grundlagen nicht beherrschen... schlimm, wenn es für sowas noch Geld gibt.

    Kommentar


    • #3
      Re: ID wird zu hoch ausgegeben

      Original geschrieben von Kawakima
      PHP-Code:
      header("location: index.php?area=threads&fid=".$_GET["fid"]); 
      wo bitte soll denn hier $_GET["fid"] herkommen?

      du hast gerade ein formular per POST an newthread.php geschickt - nix mit GET.
      allerdings hattest du vorher extra das von der vorinstanz des scriptes stammende $_GET["fid"] in ein hidden field eingefügt - also warum benutzt du es dann an der stelle nicht auch?
      $_POST["fid"]
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Irre ich? Meiner Meinung nach übergibst du der Query hier durch die Hochkomma einen String?

        PHP-Code:
        $ergebnis=mysql_query('$abfrage'); 

        Kommentar


        • #5
          @schnoop: du quellcode-leser!

          Kommentar


          • #6
            @schnoop:
            hatte ich vorher nicht so, steht aber von euch hier so geschrieben:
            Beitrag

            @TobiaZ:
            Willst mich etwa bezahlen?? Wüsste nicht, wo ich etwas über Geld geschrieben habe. Und extra für dich:

            @wahsaga:
            Stimmt, da hab ich dit übersehen und von oben einfach übernommen. *grummel*
            Ich weiß was RTFM bedeutet und nutze es auch, aber ab und zu muss ich auch mal was posten

            Kommentar


            • #7
              Original geschrieben von Kawakima
              hatte ich vorher nicht so, steht aber von euch hier so geschrieben:
              Beitrag
              da steht mysql_query('euer SQL'), nicht mysql_query('$variable').

              und jemandem, der sich mit den grundlagen des variablen-parsings in strings beschäftigt hätte, müsste man den unterschied auch gar nicht mehr erklären.


              @TobiaZ: [...]
              Und extra für dich:
              wow, mit smilies kannst du also fast so gut umgehen wie mit PHP.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Willst mich etwa bezahlen?
                Danke, aber das bisschen PHP kann ich auch noch selber...

                Kommentar


                • #9
                  Da einem hier net geholfen wird, sondern nur dumme Bemerkungen kommen sag ich mal DANKE.

                  Versteh euch net, warum führt ihr dann ein Forum

                  Bin extra in einem Forum für Anfänger und ihr labert was von "kennt die Grundlagen net". Sehr traurig!
                  Ich weiß was RTFM bedeutet und nutze es auch, aber ab und zu muss ich auch mal was posten

                  Kommentar


                  • #10
                    1. Führe ich kein Forum, ich nerve hier nur!
                    2. Wie oft wurdest du hier auf mysql_error() hingewiesen? Wenn du damit nichts anfangen kannst, solltest du den Punkt PHP von deiner Webseite wieder löschen. Just my 2 cents

                    Kommentar

                    Lädt...
                    X