Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal,
Sou um iniciante em programação, estou criando um projeto onde preciso de 2 sites.
Para um usuário usar os dois sites é preciso ser cadastrado.
Preciso muito saber como fazer que ( apenas 01 formulário de cadastro ) cadastre meus usuários em 02 sites.
Obs:
Os campos a serem preenchidos são:
Nome
Senha
repetir senha
Aceitar os termos
Obrigado.
>
2 horas atrás, Santos_2015 disse:
Não ficou muito claro, a questão do formulário, terá, ou deverá ser um em cada site(apontado pra mesma base de dados). acredito que deve ser um banco de dados só.
Olá Santos, tudo bem?!
Bom.. na verdade eu preciso de um sistema de cadastro que fosse capas de registrar o usuário em 02 banco de dados diferentes
Assim ele se cadastraria apenas uma vês mas seria capas de logar em 02 sites distintos.
Segue código para compreensão:
SQLs A SER UTILIZADOS
CREATE DATABASE banco1;
USE banco1;
CREATE TABLE users (
idUser INT NOT NULL AUTO_INCREMENT,
nome VARCHAR(100) NOT NULL,
email VARCHAR(255) NOT NULL,
senha VARCHAR(30) NOT NULL,
PRIMARY KEY(idUser)
);
CREATE DATABASE banco2;
USE banco2;
CREATE TABLE users (
idUser INT NOT NULL AUTO_INCREMENT,
nome VARCHAR(100) NOT NULL,
email VARCHAR(255) NOT NULL,
senha VARCHAR(30) NOT NULL,
PRIMARY KEY(idUser)
);
**CÓDIGO PHP**
<?php
if ( $_POST ) {
if ( $_POST [ 'senha' ] === $_POST [ 'reSenha' ] ) {
# SIMPLE CONN
$pdo = new PDO ( 'mysql:host=localhost;', 'root', '' );
$pdo->setAttribute ( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
for ( $i = 1; $i <= 2; $i ++ ) {
$pdo->query ( 'USE banco' . $i );
$stmt = $pdo->prepare ( '
INSERT INTO users (nome, email, senha) VALUES (?, ?, ?);
' );
$stmt->bindValue ( 1, $_POST [ 'nome' ] );
$stmt->bindValue ( 2, $_POST [ 'email' ] );
$stmt->bindValue ( 3, $_POST [ 'senha' ] );
$stmt->execute ();
if ( $stmt->rowCount () > 0 ) {
echo "Cadastro nº{$i} realizado!";
echo "<br />";
}
}
} else {
echo "Senha não coincidem...";
}
}
?>
<!DOCTYPE HTML>
<html>
<head>
<title> EXAMPLE </title>
</head>
<body>
<form action="#" method="post">
<label>Nome: </label>
<input type="text" name="nome" />
<br />
<label>Email: </label>
<input type="email" name="email" />
<br />
<label>Senha: </label>
<input type="text" name="senha" />
<br />
<label>Repita a Senha: </label>
<input type="text" name="reSenha" />
<br />
<input type="submit" value="Cadastrar" />
</form>
</body>
</html>ShadowDLL, Obrigado pelo apoio em dedicar seu tempo me ajudando!
Estou aplicando meus testes no local host.
Me perdoe por ser tão leigo no quesito, mas se os bancos estiverem em hospedagem diferentes?
Crie duas conexões, segue exemplo:
<?php
# SIMPLE CONN 1
$pdo1 = new PDO ( 'mysql:host=host_name_1;dbname=banco1', 'root', '' );
$pdo1->setAttribute ( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
# SIMPLE CONN 2
$pdo2 = new PDO ( 'mysql:host=host_name_2;dbname=banco2', 'root', '' );
$pdo2->setAttribute ( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
Com isso, você deverá inserir os dados em *pdo1 *e depois *pdo2*ShadowDLL
Funcionou Obrigado!!!
Embora não vou poder usar pôs percebi que mesmo que os dados sejam lançados nos 2 BD, os sites não reconhecem os novos usuários pôs no modelo original do login de cada site, quando um usuário é criado, muitos outros dados também são lançados no BD.
Com tudo estou grato pelo conhecimento ofertado agora vou usar esse recursos em outras aplicações.
Disponível ;)
Precisar de algo, estou a disposição!
Não ficou muito claro, a questão do formulário, terá, ou deverá ser um em cada site(apontado pra mesma base de dados). acredito que deve ser um banco de dados só.