MRW.it Forum
  • Home
  • Forum
  • Fare Web
  • PHP

Form di registrazione personalizzato

  • Creatore Discussione Creatore Discussione caniegatti
  • Data di inizio Data di inizio 9 Mag 2014
C

caniegatti

Nuovo Utente
4 Nov 2013
27
0
1
  • 9 Mag 2014
  • #1
Ciao a tutti,

ho, prendendo spunto da un tutorial, creato un form di registrazione personalizzato per Wordpress utilizzando questo codice:

Codice:
<?p  
/* 
Template Name: Login Page
*/
?>
<? get_header()?>

    <div class="wrapper">
	
	<?php
	$err = '';
	$success = '';

	global $wpdb, $PasswordHash, $current_user, $user_ID;

	if(isset($_POST['task']) && $_POST['task'] == 'register' ) {

		
		$pwd1 = $wpdb->escape(trim($_POST['pwd1']));
		$pwd2 = $wpdb->escape(trim($_POST['pwd2']));
		$first_name = $wpdb->escape(trim($_POST['first_name']));
		$last_name = $wpdb->escape(trim($_POST['last_name']));
		$email = $wpdb->escape(trim($_POST['email']));
		$username = $wpdb->escape(trim($_POST['username']));
		
		if( $email == "" || $pwd1 == "" || $pwd2 == "" || $username == "" || $first_name == "" || $last_name == "") {
			$err = 'Devi compilare tutti i campi obbligatori';
		} else if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
			$err = 'Indirizzo email non valido.';
		} else if(email_exists($email) ) {
			$err = 'Indirizzo email gi&agrave registrato.';
		} else if($pwd1 <> $pwd2 ){
			$err = 'Le password non corrispondono.';		
		} else {

			$user_id = wp_insert_user( array ('first_name' => apply_filters('pre_user_first_name', $first_name), 'last_name' => apply_filters('pre_user_last_name', $last_name), 'user_pass' => apply_filters('pre_user_user_pass', $pwd1), 'user_login' => apply_filters('pre_user_user_login', $username), 'user_email' => apply_filters('pre_user_user_email', $email), 'role' => 'subscriber' ) );
			if( is_wp_error($user_id) ) {
				$err = 'Errore in fase di registrazione';
				
			} else {
				do_action('user_register', $user_id);
			
				$success = 'You\'re successfully register';
			}
			
		}
		
	}
	?>

        <!--display error/success m-->
	<div id="message">
		<?php 
			if(! empty($err) ) :
				echo '<p class="error">'.$err.'</p>';
			endif;
		?>
		
		<?php 
			if(! empty($success) ) :
				echo '<p class="error">'.$success.'</p>';
			endif;
		?>
	</div>

	<form method="post">
		<h3>Don't have an account?<br/> Create one now.</h3>
		<p><label>Cognome*</label></p>
		<p><input type="text" value="" name="last_name" id="last_name" /></p>
		<p><label>Nome*</label></p>
		<p><input type="text" value="" name="first_name" id="first_name" /></p>
		<p><label>Email*</label></p>
		<p><input type="text" value="" name="email" id="email" /></p>
		<p><label>Username*</label></p>
		<p><input type="text" value="" name="username" id="username" /></p>
		<p><label>Password*</label></p>
		<p><input type="password" value="" name="pwd1" id="pwd1" /></p>
		<p><label>Reinserisci Password*</label></p>
		<p><input type="password" value="" name="pwd2" id="pwd2" /></p>
		<div class="alignleft"><p><?php if($sucess != "") { echo $sucess; } ?> <?php if($err != "") { echo $err; } ?></p></div>
        <div>Compilando il seguente form di registrazione il cliente accetta quanto previsto nel disclaimer</div>
		<button type="submit" name="btnregister" class="button" >Registrati</button>
		<input type="hidden" name="task" value="register" />
	</form>

</div>
<div></div>
<?php get_footer() ?>

Ora ho due problemi:

1) Quando invio la richiesta di registrazione, se è tutto compilato questa va a buon fine e viene fuori il messaggio di registrazione effettuata ma sotto resta il form..come faccio, una volta che la registrazione è andata a buon fine, far sparire il form?

2) Ho provato ad aggiungere questa stringa di codice
Codice:
// e inviamo una mail con la riuscita registazione

email ($email, "Registrazione OK", "Complimenti registrazione effettuata con successo", "From: miamail@miohosto.it");

alla riga 42, dopo
Codice:
} else {
				do_action('user_register', $user_id);

ma non funziona più il form dopo

Dove sbaglio?

Grazie a tutti
 
criric

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 10 Mag 2014
  • #2
Ciao, il form potresti racchiuderlo in una condizione
PHP:
if (!isset($_POST['task']) {
      // form
}
in questo modo quando il post è inviato non dovrebbe mostrarlo.

Per il secondo problema la funzione dovrebbe essere mail() non email();
 
C

caniegatti

Nuovo Utente
4 Nov 2013
27
0
1
  • 6 Lug 2014
  • #3
Ciao, grazie mille della risposta. Ho due piccoli problemi.

Il form adesso funziona correttamente ma all'admin non arriva una mail quanto l'utente si registra (primo problema che non so come risolvere).

Vorrei poi che al cliente arrivasse una mail di conferma (che adesso arriva grazie a questa porzione di codice
Codice:
			// e inviamo una mail con la riuscita registazione

mail ($email, "Registrazione Sito Web", "Complimenti registrazione effettuata con successo", "From: miamail@miosito.it");
) con formattazione html per renderla più carina.

Come posso fare? Ho provato utilizzando questo script (modificato per quello che serve a me ma non funziona)
Codice:
add_filter( 'wp_mail_content_type', 'set_html_content_type' );
wp_mail ( '$email', 'Registrazione Sito Web', 'A <strong>HTML</strong> email' 'From: miamail@miosito.it' );
function set_html_content_type() 
{
  return 'text/html';
}

remove_filter ( ‘wp_mail_content_type’, ‘set_html_content_type’ );

Grazie e buona serata
 
Devi accedere o registrarti per poter rispondere.

Discussioni simili

A
[PHP] Controllo nome utente form di registrazione
  • Andrea_2017
  • 18 Feb 2019
  • PHP
Risposte
4
Visite
2K
PHP 22 Feb 2019
xone
[css] form registrazione utente
  • X__WELBO__X
  • 7 Dic 2016
  • HTML e CSS
Risposte
9
Visite
3K
HTML e CSS 8 Dic 2016
Max 1
P
[PHP] come criptare una password in un form di registrazione
  • paperinik4
  • 17 Giu 2016
  • PHP
Risposte
4
Visite
7K
PHP 18 Giu 2016
paperinik4
P
F
form registrazione
  • frenky
  • 28 Giu 2015
  • PHP
Risposte
3
Visite
2K
PHP 28 Giu 2015
frenky
F
F
Codic e php visibile su form registrazione utenti
  • frenky
  • 23 Giu 2015
  • PHP
Risposte
2
Visite
1K
PHP 26 Giu 2015
marino51
L
errore mysql per form di registrazione
  • Luca Giammarco
  • 16 Mag 2015
  • PHP
Risposte
3
Visite
1K
PHP 16 Mag 2015
Luca Giammarco
L
D
Form Registrazione con conferma via email - problema
  • Dylan VDj Canziani
  • 27 Mar 2015
  • PHP
Risposte
10
Visite
3K
PHP 3 Mag 2015
Dylan VDj Canziani
D
L
Form di registrazione e log in.
  • Liiuk
  • 5 Nov 2014
  • PHP
Risposte
2
Visite
2K
PHP 6 Nov 2014
Liiuk
L
S
Problemi form registrazione newsletter
  • simonep
  • 21 Ago 2014
  • PHP
Risposte
0
Visite
1K
PHP 21 Ago 2014
simonep
S
C
Form registrazione Bootstrap
  • Cristiano Regni
  • 9 Lug 2014
  • PHP
Risposte
0
Visite
4K
PHP 9 Lug 2014
Cristiano Regni
C
F
script php form registrazione
  • francesco gnutti
  • 12 Nov 2013
  • PHP
Risposte
13
Visite
6K
PHP 20 Nov 2013
borgo italia
F
Controlli form per Registrazione utenti
  • FireinCairo
  • 21 Feb 2013
  • PHP
Risposte
9
Visite
3K
PHP 28 Feb 2013
alessandro1997
S
Memorizzare nome file allegato da form registrazione
  • simonedig
  • 5 Giu 2012
  • PHP
Risposte
1
Visite
2K
PHP 6 Giu 2012
borgo italia
C
Form login e registrazione aruba
  • conor2010
  • 2 Apr 2012
  • Hosting
Risposte
7
Visite
3K
Hosting 4 Apr 2012
Web Designer
A
form registrazione + php + alert javascript
  • andrex1191
  • 18 Ott 2011
  • Javascript
Risposte
6
Visite
323K
Javascript 25 Ott 2011
andrex1191
A
form per registrazione
  • emanuelevt
  • 17 Ott 2010
  • Javascript
Risposte
2
Visite
1K
Javascript 18 Ott 2010
emanuelevt
C
Cancellazione-Annulla Registrazione Dati appena Inseriti nel Form dall' Utente
  • ciopin
  • 15 Ott 2010
  • PHP
Risposte
13
Visite
3K
PHP 18 Ott 2010
borgo italia
L
Form Registrazione
  • leon-kennedy
  • 19 Mag 2010
  • PHP
  • 2 3
Risposte
56
Visite
7K
PHP 27 Mag 2010
Marchintosh
M
P
Aiuto form registrazione utenti
  • Peppe73
  • 24 Gen 2008
  • PHP
Risposte
5
Visite
5K
PHP 30 Gen 2008
Peppe73
P
I
Creare un form di registrazione
  • ilnetsurfer
  • 31 Ago 2007
  • PHP
Risposte
7
Visite
6K
PHP 5 Set 2007
Eliox
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?