Fehlermeldung in Script!!

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Fehlermeldung in Script!!

    Also ich hab da ein Prob! Ich mach grad ein Script das die Klicks auf Buttons zählt! Ich hab mit PHPmyAmin ne Tabelle mit 3 Spalten (id,url,clicks) erstellt und drei urls mit jeweils einer ID und demenstprechender URL! So dann hab ich eine go.php DAtei erstellt mit folgendem code
    PHP-Code:
    <?
    $sql = 'SELECT url, clicks FROM link_table WHERE id = "'.$_GET['id'].'"'; 
    $result = mysql_query($sql);
    echo mysql_error();  
    list($url,$clicks) = mysql_fetch_row($result); 
    $clicks++; 
    $sql = 'UPDATE link_table SET clicks = "'.$clicks.'" WHERE id = "'.$_GET['id'].'"'; 
    mysql_query($sql); 
    header('Location: '.$url); 
    exit();
    ?>
    So und die URLs ruf ich mit go.php?id=1 zB auf!

    Nur stimmt da was net....

    PHP-Code:
    No Database Selected
    Warning
    mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /usr/local/httpd/htdocs/mc/go.php on line 5

    Warning
    Cannot modify header information headers already sent by (output started at /usr/local/httpd/htdocs/mc/go.php:4in /usr/local/httpd/htdocs/mc/go.php on line 9 
    Was gehlt denn da oder was is an dem script falsch???

    plz helP! sers Mc
    Zuletzt geändert von Mc.; 13.08.2003, 16:46.

  • #2
    mach das mal in eine zeile

    PHP-Code:
    //alt
    $result mysql_query($sql);
    echo 
    mysql_error(); 

    // neu
    $result mysql_query($sql) or die(mysql_error()); 
    das aber nur am rande ....


    tatsache ist jedoch diese ausgabe deines scriptes: No Database Selected

    ergo solltest du da mal nachbessern...
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Du musst erstmal eine Verbindung zum MySQL-Server herstellen.


      PHP-Code:
      $db mysql_connect($server,$user,$password);
      mysql_select_db($database$db); 

      Kommentar


      • #4
        K des mit dem conecten zur DB funtzt jetzt und der Wert von 'click' wird dann erhöht wenn der link aufgerufen wird, aber wie lese ich den wert von clicks bei einer bestimmten ID aus, also ich habe Homepage 1 mit der ID1 wie viel clicks die schon hat, wie mach ich des??

        weil mit dem Befehl
        PHP-Code:
        $sql "SELECT      clicks     FROM       link_table 
        Kann ich ja nur die ganze Spalte abrufen ich will aber nur die eine anzahl der clicks von der id 1...

        sers Mc
        Zuletzt geändert von Mc.; 13.08.2003, 17:17.

        Kommentar


        • #5
          PHP-Code:
          $sql mysql_query("SELECT clicks FROM link_table WHERE id  = '".$_GET['id']."'"); 
          Hast du doch oben schonmal.

          Kommentar


          • #6
            Mh irgendwas stimmt da net

            PHP-Code:
            <?php
            mysql_connect
            (localhostuserpass); 
            mysql_select_db(DB);
            $sql mysql_query("SELECT clicks FROM link_table WHERE id  = '".$_GET['id']."'");
            ?>

            Kann jemand einfach nur den code für das abrufen der clicks von ID 1 sagen, dann geb ich halt manuell immer die IDs ein...

            sers Mc

            Kommentar


            • #7
              das ist doch wohl nicht dein erst. oder?

              benutze mal die funktion think()
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8


                Konkrete Lösungsvorschläge würde ich andren Antworten vorziehen...


                sers Mc

                Kommentar


                • #9
                  wenn du eben nichts lernen willst.... dein problem. aber dann wirst du früher oder später keine freude mehr hier haben....

                  tausche

                  '".$_GET['id']."'

                  gegen

                  1
                  INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                  Kommentar


                  • #10
                    k naja ups 2 mal ' zuviel...
                    k deine antwort war volends berechtigt, sry


                    sers Mc

                    Kommentar


                    • #11
                      wieso zweimal ' zu viel?

                      da es sich bei einer id-spalte normalerweise um einen zahlentyp handelt, braucht man die ' nicht. es sei denn du hast varchar für die id-spalte verwendet. das ist aber käse.
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        Ne ich hab für id: int(11) mit autoincrement
                        url:varchar(255)
                        clicks:int(11)
                        Ich hab die mit PHPmyAdmin erstellt...

                        so nur irgendwas stimmt da net:
                        PHP-Code:
                        php
                        mysql_connect
                        (localhostUSERPASS); 
                        mysql_select_db(DB);
                        $sql mysql_query("SELECT clicks FROM link_table WHERE id  = 1"); 
                        MH brauch ich da nich noch sowas wie nen echo befehl??? Weil select heisst ja nur anwählen????

                        Edit: ne while hab ich net Hab heute erst so richtig mit MYsql begonnen...
                        Wie soll ich des dann mit dem while machen??
                        Also wenn ich " echo $sql" mit angeb kommt halt die resource id (#33) die wird dann jetzt in der while schleife gebraucht oder?
                        Zuletzt geändert von Mc.; 13.08.2003, 18:04.

                        Kommentar


                        • #13
                          das besagte or die(mysql_error()) kennst du noch?

                          das while im anschluss an die abfrage hast du auch? ich nehme mal an, du hast es nur nicht gepostet.
                          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                          Kommentar


                          • #14
                            K die while schleife hab ich noch net... Hab erst heute so richtig mit MySQL begonnen, muss mir noch die TUTs feddisch durchlesen! So das ist mein jetziger stand:

                            PHP-Code:
                            <?php
                            mysql_connect
                            (localhostUSERPASS); 
                            mysql_select_db(DB);
                            $sql mysql_query("SELECT clicks FROM link_table WHERE id  = 1");
                            $result mysql_query($sql) OR die(mysql_error());
                            while(
                            $row mysql_fetch_assoc($result)) {
                            echo 
                            $row;
                            }
                            ?>
                            Ich hab die schleife aus nem TUT kopiert und angepasst, aber wahrscheinlich falsch:

                            You have an error in your SQL syntax near 'Resource id #33' at line 1

                            Kommentar


                            • #15
                              PHP-Code:
                              $sql mysql_query("SELECT clicks FROM link_table WHERE id  = 1");
                              $result mysql_query($sql) OR die(mysql_error()); 
                              = unsinnig -> think()

                              PHP-Code:
                              $sql mysql_query("SELECT clicks FROM link_table WHERE id  = 1") OR die(mysql_error()); 

                              Kommentar

                              Lädt...
                              X