PHP Viariable dynamisch anzeigen

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

  • PHP Viariable dynamisch anzeigen

    hey,

    ich habe mir einen shop erstellt, und möchte da die funktion einfügen, dass der Warenbestand dynamisch angezeigt wird. ich glaube, dass man das irgendwie mit java script hin bekommt, bisher sieht es so aus:

    PHP-Code:
    $artikel $_GET['artikel'];

      
    $abfrage "SELECT * FROM artikel WHERE id LIKE $artikel";
      
    $ergebnis mysql_query($abfrage);
      
    $row mysql_fetch_object($ergebnis);

      
    $bestand $row->bestand;
      
    $name $row->name;

    echo 
    "Es sind noch $bestand Artikel vorhanden"
    wie mache ich das nun dynamisch?

  • #2
    Definiere dynamisch!

    [edit]Meine Vermutung:
    A ruft Seite auf und sieht Bestand: 5 Stück.
    B kauft ein Produkt.
    A sieht automatich, dass nur noch Bestand: 4 Stück vorhanden sind.

    Das lässt sich über AJAX realisieren. Einfach im Hintergrund ein PHP-Script abfragen, welches den Aktuellen Bestand ausgibt. Fertig.

    Hat dein Shop wirklich (noch*) so viele Kunden?/edit]

    OffTopic:
    Und wenn du meinst, dass es mit JS zu lösen ist, warum postest du im PHP-Forum?


    PHP-Code:
    $abfrage "SELECT * FROM artikel WHERE id LIKE $artikel"
    *Muss jeder selber wissen, was er da macht...
    Zuletzt geändert von TobiaZ; 02.09.2008, 21:32.

    Kommentar


    • #3
      Huiuiui... Da ist (wie TobiaZ schon sagte) eine riesen Sicherheitslücke in deinem SQL Statement

      Siehe dazu: http://de.wikipedia.org/wiki/MySQL_Injection

      Kommentar


      • #4
        Definiere dynamisch!
        dynamisch in sofern, als dass sich der wert dynamisch ändern soll, also in regelmäßigen abständen geändert wird, ohne, dass der nutzer neuladen muss.


        EDIT:
        Meine Vermutung:
        A ruft Seite auf und sieht Bestand: 5 Stück.
        B kauft ein Produkt.
        A sieht automatich, dass nur noch Bestand: 4 Stück vorhanden sind.

        Das lässt sich über AJAX realisieren. Einfach im Hintergrund ein PHP-Script abfragen, welches den Aktuellen Bestand ausgibt. Fertig.

        ich will ja nicht doof rüberkommen, aber ich habe keine ahnung von AJAX, kannst du mir den code schreiben?

        Hat dein Shop wirklich (noch*) so viele Kunden?


        naja, bisher hat der shop noch keine kunden, aber ich wollte schon mal alles einigermaßen fertig haben, bevor ich die kunden drauf los lasse.

        OffTopic:
        Und wenn du meinst, dass es mit JS zu lösen ist, warum postest du im PHP-Forum?

        OB mit Java, oder sonstwie ist mir egal, ich habe nur gehört, dass es mit php alleine nicht möglich ist, und bei php aus dem grunde, das ich ja eine php variable ausgeben möchte

        PHP-Code:
        $abfrage "SELECT * FROM artikel WHERE id LIKE $artikel"
        *Muss jeder selber wissen, was er da macht...

        Danke, dessen war ich mir noch gar nicht bewusst, da werde ich mich dann wohl auch noch drum kümmern müssen, reicht es da eigentlich nicht einfach aus, wenn ich da folgende mache:

        PHP-Code:
         $artikel_alt $artikel;
        $artikel_alt str_replace("<""&lt;"$artikel_neu);
         
        $artikel_neu str_replace(">""&gt;"$artikel_neu);
         
        $artikel_neu str_replace("'"""$artikel_neu);
        $artikel_neu str_replace(""", "", $artikel_neu);
        $artikel_neu = str_replace(";", "", $artikel_neu); 
        oder so mache? also, rein theoretisch...

        Kommentar


        • #5
          Wenn du nicht weißt, wie man ein SQL-Query vor SQL-Injections schützt, würde ich dir nicht empfehlen einen eigenen Shop zu programmieren. Da hast du bei einer Sicherheitslücke gleich richtig Probleme. Musst du aber selbst wissen. Mit mysql_real_escape_string() lässt sich das Problem übrigens beheben.

          Kommentar


          • #6
            Original geschrieben von matzeee
            Wenn du nicht weißt, wie man ein SQL-Query vor SQL-Injections schützt, würde ich dir nicht empfehlen einen eigenen Shop zu programmieren. Da hast du bei einer Sicherheitslücke gleich richtig Probleme. Musst du aber selbst wissen. Mit mysql_real_escape_string() lässt sich das Problem übrigens beheben.
            so?
            PHP-Code:
            $abfrage "SELECT * FROM artikel WHERE id LIKE '".mysql_real_escape_string($artikel)."'"
            bzw kann mir wer den AJAX code geben?

            Kommentar


            • #7
              http://demos.mootools.net/Request.HTML

              Ich möchte aber nicht enden, ohne mich meinen Vorrednern anzuschließen.
              Ein Shop ist ein sehr großes Projekt und die Masse an möglichen Sicherheitsquellen ist immens.
              Probier es, lernen wirst du dabei sicherlich einiges und auch bemerken, dass dieses eine Problem hier wohl noch eines der leichtesten war.

              gruß
              Piremilok

              Kommentar


              • #8
                *move* nach Projekthilfe*

                Kommentar


                • #9
                  naja, es soll nur ein einfacher shop sein, jemand bestellt 3 artikle, und überweist das geld, in der überweisung steht dann noch die auftragsnummer, und dann guck ich halt nach, was das war, wenn die gelder dann übereinstimmen, dann verschicke ich die artikel, sonst muss ich wohl wieder kontakt aufnehmen.

                  Kommentar


                  • #10
                    Und wieder bekomme ich keine letzte antwort zu meiner Frage, könntet ihr nicht zu mindest sagen, wie ich mir das mit AJAX schnell machen kann, oder mir gar den script schicken?

                    Kommentar


                    • #11
                      Wenn ich via Javascript den timestamp erhalte, wie änder ich diesen um, in ein richtiges datum?

                      Ich weiß, dass es die Funktion:

                      var date = new Date()

                      gibt, aber ich habe einen timestamp aus einer db gelesen, und möchte nun die sec bis zu diesem zeitpunkt angeben, wobei es sich jede sec automatisch aktuallisieren sollte.

                      sprich (es ist 1221839982)
                      wie viele sec bis 1221839990
                      dann soll er mir in der ersten sec "8 sec" zeigen
                      in der zweiten sec "7 sec"
                      und dann nach 8 sec "0 sec" zeigen, wie mache ich das?

                      Kommentar


                      • #12
                        Wenn ich via Javascript den timestamp erhalte, wie änder ich diesen um, in ein richtiges datum?
                        Was für einen Timestamp? Und wie sieht das Zielformat aus?

                        und dann nach 8 sec "0 sec" zeigen, wie mache ich das?
                        Such dir ein beliebiges Countdown Script. setTimeout() hilft dir.

                        Kommentar


                        • #13
                          Ich habe zwei timestamps jetzt(1221839990)

                          und in 10 min (1221841590)

                          wenn ich die seite das erste mal aufrufe soll also ein timer erscheinen, in dem dann von 10:00 runtergezählt wird.

                          rufe ich die selbe seite 2 min später auf, zählt er von 8:00 runter.

                          der jetzt wert wird ganz normal mit einer funktion ermittelt, und der andere wert wird aus einer mysql db ausgelesen, am liebsten mit php, da ich das schon kann.

                          Ziel des ganzen ist, dass ich damit die zeit, z.b. bis zum nächsten reset, oder sonstigem ausgeben kann. Undynamisch bekomme ich das einfach mit php hin, indem ich den einen wert vom anderen abziehe, und dann entsprechend durch 60/60/24 usw dividiere, aber ich bekomme es nicht dynamisch, also so, dass es nicht statisch stehen bleibt, und erst bei einem refresh aktualisiert wird.

                          Kommentar


                          • #14
                            Original geschrieben von TobiaZ
                            Such dir ein beliebiges Countdown Script. setTimeout() hilft dir.

                            Kommentar


                            • #15
                              ich versteh das nicht, was google mir da sagen will

                              Kommentar

                              Lädt...
                              X