Formular mit unterschiedlicher ID senden!?

Grunge

Erfahrenes Mitglied
Hey Leute:
vorweg: ich bin ne absolute Null in JS/Jquery oder Ajax - deswegen brauche ich eure Hilfe bei nem kleinen Problemchen...
Ich verwende Ajax um Formulare ohne Reload mit PHP verarbeiten zu können. Das funktioniert 1A bisher, nur habe ich nun ein kleines Problemchen:

Ich arbeite an einem Projekt welches eine Art "Newsstream" ausgibt, also einen Bereich in dem Nutzer etwas posten können (ähnlich wie bei sozialen Netzwerken). Ferner soll es den Nutzer natürlich möglich sein, diese Posts kommentieren zu können, und genau dabei liegt das Problem:

ich lade also via PHP alle in der DB vorhandenen Posts und gebe sie in einer schleife aus. Unter dem Post ist jeweils ein Formular (was bisher natürlich immer gleich heißt).
Und dann soll eben diese Ajax Funktion aufgerufen werden, um den Kommentar in die Datenbank zu speichern.

Code:
//KOMMENTIEREN:
          $(document).ready(function(){
        $("#kommi").submit(function(e){
          e.preventDefault();
          $.post("php/comment.php",$("#kommi").serialize(),function(msg){
            //$('#bs-example-modal-lg').modal('hide');
           

          });
        });
      });

'kommt ist hierbei das Formular!
Funktioniert aber nur beim 1. zu kommentierendem Beitrag. Bei allen anderen ruft er die Funktion nicht auf.

Meine Überlegung nun: Dem Formular mit PHP eine id anhängen, also kommi_1, kommi_2, usw.. nur wie verarbeite ich das ganze dann eben in Ajax, also woher weiß ich, welches Formular abgesendet wurde?

Danke für eure Hilfe !!
 
Versuch's mal mit einer Klasse und $(this):
Code:
//KOMMENTIEREN:
      $(document).ready(function(){
        $(".kommi").submit(function(e){
          e.preventDefault();
          $.post("php/comment.php",$(this).serialize(),function(msg){
            //$('#bs-example-modal-lg').modal('hide');
         
          });
        });
      });
 
PS:
nur wie verarbeite ich das ganze dann eben in Ajax, also woher weiß ich, welches Formular abgesendet wurde?
Das verstehe ich erst jetzt, wenn das Formular im PHP-Skript ankommt, liegt gar keine Information darüber vor, um welches es sich handelt. Das würde ich lösen, indem ich jedem Formular ein verdecktes Eingabefeld mitgebe, in dem eine eindeutige ID als Wert steht.
 
So hab ich es jetzt auch gemacht Sempervivum.
Zuerst hatte ich daran gedacht, jedes Formular eben durch ne eindeutige ID zu identifizieren, und dann in einer Schleife (von 0 bis höchste Formular ID) ein individuelles jQuery Script auszugeben, das ist natürlich bei 100 Formularen etwas nervend - und frisst speicher..
 
Zurück