terminID autoincrement

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

  • terminID autoincrement

    Hi,

    ich habe eine Seite mit aktuellen Terminen, die
    man selbst verwalten kann, bis jetzt konnte man nur immer einen Termin dazuschreiben und der letzte wurde gelöscht, habe also eine terminID
    autoincrement. Nun will ich aber das man innerhalb der 8 termine entweder einen löschen kann bzw die positions verschieben kann.

    Wie könnte man das am besten lösen?

    Die id sieht nicht immer 1,2,3,4,5,6,7,8, aus sondern eher 1,13,25,17
    bzw ich will ja immer 1,2,3,4,5,6,7,8 aber dann zum bespiel die daten aus ID 2 nach 1 verlegen und die aus 1 nach 2

    Wie kann ich das am besten lösen? Idee?

    WPM
    ----------------------------------------

    Habe nie behauptet,
    daß ich coden kann! :-)

    Hinweis:
    Ich finde ebiz-consult toll!
    ----------------------------------------

  • #2
    nicht mit dieser spalte, sondern mit ner neuen

    http://php-resource.de/forum/showthr...ierreihenfolge
    http://www.php-resource.de/forum/sho...t=set+position

    hth
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      danke, werde ich mir zu Gemüte führen
      ----------------------------------------

      Habe nie behauptet,
      daß ich coden kann! :-)

      Hinweis:
      Ich finde ebiz-consult toll!
      ----------------------------------------

      Kommentar


      • #4
        Ich habe jetzt den Termin-Table mit POS(Position) versehen.

        Nun stelle ich mir die Frage wie ich das select/update machen soll bzw auch das php-skript:


        Maske:

        Oben die Maske, wo man einen neuen Termin eingeben kann[pos soll 1 werden und dann alle anderen rutschen einen "pos" höher.


        Darunter alle Termine die in der DB sind und die ich durch klicken von unten nach oben oder von oben nach unten per form klick anordnen kann.



        Aber welche Selects und Updates brauche ich dafür und mit php muss ich da mit nem Array arbeiten???

        WPM
        ----------------------------------------

        Habe nie behauptet,
        daß ich coden kann! :-)

        Hinweis:
        Ich finde ebiz-consult toll!
        ----------------------------------------

        Kommentar


        • #5
          die selects stehen alle fast genau so in den beiden threads die ich dir gepostet hab
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            okay, ich habe jetzt mit

            PHP-Code:
            $query="UPDATE termine 
            SET terminPos = terminPos + 1  "
            ;
            $result=mysql_query($query,$vk); 
            bei einem neuen termin, die anderen Termine um eine Position erhöht und den neuen Termin aus Pos 1 gesetzt, so weit so gut;-)

            Jetzt habe ich aber mit select alle Termindaten ausgelesen und damit alle Termine mit Daten untereinander ausgegeben. Jeder Termin hat an der Seite einen Hoch und Runter Button für die Anordnung.
            Aber wie weiss ich jetzt welche Position ein Termin in der ggf Situation hat, um Ihn neu auszurichten, muss ich die Pos-Daten in ein Array schreiben oder wie mache ich das, denke das ist jetzt wieder mehr php als DB, aber es gehört ja zum Thema.

            Grüße

            WPM
            ----------------------------------------

            Habe nie behauptet,
            daß ich coden kann! :-)

            Hinweis:
            Ich finde ebiz-consult toll!
            ----------------------------------------

            Kommentar


            • #7
              [ ] du hast diue select-anweisungen gelesen und verstanden
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                Deine - gelesen ja verstanden jein

                $erstens=SELECT id,pos FROM tabelle WHERE pos=$pos
                $zweitens=SELECT id,pos FROM tabelle WHERE pos>$pos LIMIT 1 ORDER BY pos ASC

                UPDATE tabelle SET pos=$zweitens[pos] WHERE id=$erstens[id]
                UPDATE tabelle SET pos=$erstens[pos] WHERE id=$zweitens[id]
                Woher weiss ich, welchen Inhalt die POS-Variable hat?
                ----------------------------------------

                Habe nie behauptet,
                daß ich coden kann! :-)

                Hinweis:
                Ich finde ebiz-consult toll!
                ----------------------------------------

                Kommentar


                • #9
                  hatte einen Denkfehler;-)

                  die Variable mit dem POS-Wert gebe ich ja schon vorher im FORM-Tag aus!

                  ich check das jetzt nochmal

                  Nette Grüße

                  WPM
                  ----------------------------------------

                  Habe nie behauptet,
                  daß ich coden kann! :-)

                  Hinweis:
                  Ich finde ebiz-consult toll!
                  ----------------------------------------

                  Kommentar


                  • #10
                    Hier möchte ich einen Termin von terminPOS=3 auf position 2 verschieben,
                    doch es funzt nicht, komm "denktechnisch" nicht weiter.

                    Mit diesem Skript sollen alle termine ab 2. immer nach oben geschoben werden können:

                    PHP-Code:
                    include("connection.php");
                    if(
                    $posoben=="go") { 
                        
                    $posoben=="";
                        echo 
                    $position;
                    $query1="SELECT terminID,terminPOS FROM termine WHERE terminPOS=$position";
                    $result1=mysql_query($query1,$vk);
                    $result1=mysql_fetch_array($result1);
                    $query2="SELECT terminID,terminPOS FROM termine WHERE terminPOS>$position LIMIT 1 ORDER BY terminPOS ASC";
                    $result2=mysql_query($query2,$vk);
                    $result2=mysql_fetch_array($result2);
                    $query3="UPDATE termine SET terminPos=$result2[terminPOS] WHERE terminID=$result1[terminID]";
                    $result3=mysql_query($query3,$vk);
                    $query4="UPDATE termine SET terminPos=$result[terminePos] WHERE terminID=$result2[terminID]";
                    $result4=mysql_query($query4,$vk);

                    echo
                    "hellO";} 
                    ----------------------------------------

                    Habe nie behauptet,
                    daß ich coden kann! :-)

                    Hinweis:
                    Ich finde ebiz-consult toll!
                    ----------------------------------------

                    Kommentar


                    • #11
                      so nach oben und unten sortieren funktioniert.

                      Wie komme ich aber an die höchste Postionsnummer.
                      Ich lese z.B. 1,2,3,4,5,6,7,8 aus der DB aus und will wissen, welche POSnummer der lezte Termin hat, sprich in diesem Fall die 8,
                      das kann man entweder mit sql oder mit php lösen, aber wie?

                      count wohl weniger

                      WPM
                      ----------------------------------------

                      Habe nie behauptet,
                      daß ich coden kann! :-)

                      Hinweis:
                      Ich finde ebiz-consult toll!
                      ----------------------------------------

                      Kommentar


                      • #12
                        select max(pos) eventuell?
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar


                        • #13
                          danke, goldrichtig
                          ----------------------------------------

                          Habe nie behauptet,
                          daß ich coden kann! :-)

                          Hinweis:
                          Ich finde ebiz-consult toll!
                          ----------------------------------------

                          Kommentar

                          Lädt...
                          X