Obwohl der folgende Code aus RSForm, das Tool, das ich derzeit für meine Formulare verwende, stammt, glaube ich, dass meine Frage mit reinem PHP-Kenntnisse gelöst werden kann, obwohl mein Kampf nicht von überall kommt Hier.Begrenzen Formularübergabe für Benutzer pro Seite
Gibt es eine Möglichkeit, den Benutzer zu begrenzen, die Form eine bestimmte Anzahl von Zeiten in bestimmten Seiten, wo meine Form zeigt zu beantworten?
Ich habe die gleiche Form auf vielen Seiten recycelt und ich wünschte, die Benutzer könnten nur einmal pro Seite beantworten. Ist das überhaupt möglich?
habe ich diesen Code, der bereits erfolgreich die Anzahl der Male begrenzt ich jeden Benutzer wünschen, das Formular senden zu können, aber wie kann ich sie nur einschränken, wenn sie die Form in bestimmten Seiten beantworten? Das Ergebnis, das ich wünsche, ist, dass sie das gleiche Formular nur einmal pro Seite beantworten können, wo sie das Formular finden.
// Define the maximum number of submissions.
$max = 1;
// Get the current logged in user.
$user = JFactory::getUser();
// Get a database connection.
$db = JFactory::getDbo();
$query = $db->getQuery(true);
// Setup the query.
$query->select('COUNT('.$db->qn('Username').')')
->from($db->qn('#__rsform_submissions'))
->where($db->qn('FormId').'='.$db->q($formId))
->where($db->qn('Username').'='.$db->q($user->get('username')));
// You can also count by User ID, just replace the above with:
// ->where($db->qn('UserId').'='.$db->q($user->get('id')));
$db->setQuery($query);
$counter = $db->loadResult();
if ($counter >= $max){
$formLayout = 'Sorry, you have reached the maximum number of submissions for this form.';
}
Gibt es das überhaupt anpassen zu beschränken, wenn das Formular auf der gleichen Seite gestellt wird?
EDIT:
Diese Formen werden immer auf K2 Artikelseiten und ich dachte, dass ich die Artikel-ID mit diesem Code erhalten können:
$K2Itemid = JRequest::getInt('id');
Ich denke, ich kann Das ist die Bedingung, die ich vermisse. Ich könnte die Einreichung mit der K2 ID als eine andere Seite eingrenzen. Kann mir jemand helfen, dies zu tun? Wie würde ich diese Bedingung einfügen?
ich bearbeiten meinen Beitrag zu zeigen, dass ich K2 Artikel bin mit, die Vorlage zu begrenzen, könnte vielleicht im Skript verwendet werden. Glauben Sie, dass Sie mir helfen können, diese Informationen im "Wo" anzuwenden? Es tut mir leid, aber ich bin ein Anfänger mit PHP. –