Updaten oder Ersetzen

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

  • Updaten oder Ersetzen

    hi, ist es irgendwie möglich über nur eine Abfrage einen Wert, falls nicht vorhanden, einzutragen und falls vorhanden, ihn upzudaten?

    Replace macht es nicht so wirklich.

    PHP-Code:
    $Connection->query("REPLACE ".dbPrefix_nd."counter_today SET clicks=clicks+1, date='".date("Ymd")."'"); 
    geht nicht
    Sunshine CMS
    BannerAdManagement
    Borlabs - because we make IT easier
    Formulargenerator [color=red]Neu![/color]
    Herkunftsstatistik [color=red]Neu![/color]

  • #2
    geht nicht
    definiere!

    Kommentar


    • #3
      okay pass auf: statt den wert von clicks um 1 hoch zu zählen tut er einfach einen weiteren eintrag in die DB mmachen.
      Sunshine CMS
      BannerAdManagement
      Borlabs - because we make IT easier
      Formulargenerator [color=red]Neu![/color]
      Herkunftsstatistik [color=red]Neu![/color]

      Kommentar


      • #4
        Wie sieht denn deine Tabelle aus?

        Problem ist wahrscheinlich, dass das click+1 nicht funktionieren wird, vermute ich.
        Zuletzt geändert von TobiaZ; 30.10.2004, 20:26.

        Kommentar


        • #5
          CREATE TABLE `stadt_portal_counter_today` (
          `parentstadtportalunid` int(255) NOT NULL default '0',
          `clicks` int(255) NOT NULL default '0',
          `date` varchar(30) NOT NULL default ''
          ) TYPE=MyISAM;
          Sunshine CMS
          BannerAdManagement
          Borlabs - because we make IT easier
          Formulargenerator [color=red]Neu![/color]
          Herkunftsstatistik [color=red]Neu![/color]

          Kommentar


          • #6
            folgendes ist dein Problem:

            REPLACE funktioniert genau wie INSERT, ausser dass der alte Datensatz gelöscht wird, bevor ein neuer eingefügt wird, wenn ein alter Datensatz in der Tabelle denselben Wert wie der neue auf einem eindeutigen Index hat
            Aus dem Mysql-manual, könntest du also selbsf gelesen haben ; )

            Kommentar


            • #7
              achne, deswegen such ich ja ne alternative
              Sunshine CMS
              BannerAdManagement
              Borlabs - because we make IT easier
              Formulargenerator [color=red]Neu![/color]
              Herkunftsstatistik [color=red]Neu![/color]

              Kommentar


              • #8
                update machen, und wenn affected_rows == 0 dann insert hinteher schieben
                TBT

                Die zwei wichtigsten Regeln für eine berufliche Karriere:
                1. Verrate niemals alles was du weißt!


                PHP 2 AllPatrizier II Browsergame

                Kommentar


                • #9
                  das mit dem "click+1" dürfte nicht das Problem sein,

                  aber ich versteh nicht, wieso du es nicht mit einem einfachen update-query machst?

                  sieht auf den ersten blick nach einem counter aus, was du da machst

                  byez - sagg
                  mfg - sagg

                  Kommentar


                  • #10
                    @sagg: versuch mal ein update auf ein nicht vorhandenen datensatz
                    @tbt: danke
                    Sunshine CMS
                    BannerAdManagement
                    Borlabs - because we make IT easier
                    Formulargenerator [color=red]Neu![/color]
                    Herkunftsstatistik [color=red]Neu![/color]

                    Kommentar


                    • #11
                      @Benny: Jetzt tu mal nicht so oberschlau, dass du REPLACE falsch angewendet hast ist nunmal leider Tatsache!

                      Kommentar


                      • #12
                        na gut, das klingt logisch

                        die Funktion "replace" hab ich auch noch nie benutzt, aber man könnte den Eintrag bei der Installation (wenn es sowas bei deinem script gibt) mit rein schreiben, dann wäre update wunderprächtig dafür geeignet

                        aber thema is ja jetzt geklärt (und ich hab auch wiedermal was dazu gelernt )


                        byez - sagg
                        mfg - sagg

                        Kommentar


                        • #13
                          hi, ist es irgendwie möglich über nur eine Abfrage einen Wert, falls nicht vorhanden, einzutragen und falls vorhanden, ihn upzudaten?Replace macht es nicht so wirklich.
                          soo, ich hab schon gesagt das replace nicht geht - ich h ab auch im manual nachgelesen. und ich habe eindeutig nach einer möglickeit gesucht.

                          [x] tobi zum dumm zum lesen - will nur auf mir rumhacken
                          Sunshine CMS
                          BannerAdManagement
                          Borlabs - because we make IT easier
                          Formulargenerator [color=red]Neu![/color]
                          Herkunftsstatistik [color=red]Neu![/color]

                          Kommentar


                          • #14
                            aber ein "wert" und ein "eintrag" sind zwei paar schuhe, ich bin davon ausgegangen, das ein wert in der tabelle nicht gesetzt ist, nicht das der eintrag in die tbl komplett erstellt werden muss, missverständiss eben

                            byez- sagg
                            mfg - sagg

                            Kommentar


                            • #15
                              @Benny: Laber nicht. Guck dir deine Tabelle an, dann siehst du auch dass es daran liegt. Hättest du es richtig verwendet, wäre kein neuer DS angelegt worden, sondern es wäre ein Insert mit Wert "0 + 1" ausgeführt worden.

                              In diesem Sinne!

                              Erspar dir solche Halbwahrheiten:
                              tobi zum dumm zum lesen - will nur auf mir rumhacken
                              Lesen kann ich durchaus!

                              Kommentar

                              Lädt...
                              X