2017-02-28 5 views
-4

Ich habe ein Formular auf meiner Homepage, das einen Eingang aufnimmt. Nachdem das Formular abgeschickt wird es Umleitungen auf eine neue Wordpress-Seite test123, dass ihr Inhalt wird von test-template.phpWie weise ich eine eindeutige URL in PHP zu?

Der Inhalt für jede Person einzigartig ist (vom Benutzer Eingang generiert).

Also ich versuche, eine Möglichkeit zu finden, eine eindeutige URL für den Inhalt zuweisen, sobald das Formular übermittelt wird, und zeigen Sie dann den Inhalt auf dieser URL.

Edit (zusätzliche Details):

<form method='post' action='<?php bloginfo('url'); ?>/test123/' > 
    Email: <input type="text" name="email" aria-required="true" required> 
    <input type="submit"> 
</form> 

Nachdem das Formular abgeschickt wird, die Seite neu geladen zu example.com/test123, stattdessen sollte es example.com/RANDOM-ID nachladen

+3

Ja, und? Was hast du probiert? – tadman

+0

Nun, ich weiß, wie man die Zufallsfolge entweder mit uniqueid() oder md5() erzeugt, aber noch nicht versucht habe, es der URL hinzuzufügen, da ich keine Ahnung habe, wo ich anfangen soll 'action =" ... "'), ohne Glück. – Lau

+1

Verwenden Sie nicht MD5. Bitte. Je. Für alles. Vergiss es sogar existiert. Warum nicht zufällige Identifikatoren erzeugen? – tadman

Antwort

1

Es ist nicht leicht, Sie, weil ich don helfen Ich weiß nicht, wie dein Code aussieht. Aber trotzdem, lass es uns versuchen.

Sie können einfach uniqueid() verwenden.

Wenn Sie mit einem Formular arbeiten, verwenden Sie nur ein verstecktes Feld wie folgt aus:

<input type="hidden" name="unique_id" value="<?= uniqueid(); ?>">

Dann einfach in Ihre PHP-Datei echo $_POST['unique_id']; verwenden.

Eine andere Möglichkeit wäre die eindeutige ID direkt in der URL verwenden, irgendwie wie folgt aus:

example.com?id=<?= uniqueid(); ?>

In diesem Fall, dass Sie den Wert erhalten, indem echo $_GET['id']; in Ihre PHP-Datei.

aktualisieren

Dieses Formular würde:

<form method='post' action='<?php bloginfo("url"); ?>/test123/' > 
    Email: <input type="text" name="email" aria-required="true" required> 
    <input type="hidden" name="hidden_id" value="<?php echo uniqid(); ?>"> 
    <input type="submit"> 
</form> 

Und das Sie für Ihre PHP-Datei verwenden können, die eindeutige ID zu erhalten:

Unique ID: <?php echo $id = (isset($_POST['hidden_id'])) ? $_POST['hidden_id'] : 'No ID found.'; ?> 
+0

Danke für die Vorschläge. Leider hat keine Methode funktioniert. Der erste verhindert lediglich das vollständige Laden meiner Homepage. Der zweite erlaubt mir nicht, die eindeutige ID direkt in der URL von WordPress hinzuzufügen.Ich habe die ursprüngliche Frage mit dem Formularcode aktualisiert, falls es irgendwelche Ideen gibt. – Lau

+0

@Lau Sie haben einen Syntaxfehler in der ersten Zeile Ihres Codes. Ich habe gerade meine Antwort aktualisiert und auch den Code getestet. Es funktioniert für mich und ich hoffe, dass es auch für Sie funktioniert. –

Verwandte Themen