[PHP] registrazione utente in un database sql con confronto

Azalyn

Nuovo Utente
20 Ago 2019
1
0
1
Salve, sono nuovo e premetto che non so una ceppa sia di php che di sql.
Ho trovato tutto online e funziona tutto correttamente ma vorrei aggiungere una funzione in fase di registrazione tipo "l'utente che ti ha fatto conoscere il sito". Nella pagina dedicata di registrazione web ho gia inserito la casella per l'immissione del nome utente ma adesso mi servirebbe da "aggiungere la funzione" al file register.php che allego
PHP:
<?php
include('../config/dbconf.php');

function encrypt($user, $pass) {
  $user = strtoupper($user);
  $pass = strtoupper($pass);
  return sha1($user.':'.$pass);
}

if($_POST['pass'] != $_POST['pass2']){
  echo "The passwords don't match.<br/>";
}

$username = $_POST['user'];
$password = encrypt($username, $_POST['pass']);
$email = $_POST['email'];

$count = 0;

$stmt = $conn->prepare("SELECT * FROM account WHERE username=?");
$stmt->bind_param("s", $username);
$stmt->execute();
$stmt->store_result();
if($stmt->num_rows > 0) {
  $count = 1;
}

if($count == 0) {
  $sql = "INSERT INTO account (username,sha_pass_hash, email) VALUES(?, ?, ?)";
  $stmt = $conn->prepare($sql);
  $stmt->bind_param("sss", $username, $password, $email);
  if($stmt->execute()) {
    echo "registered";
  }else{
    echo "Failed to register<br>" . $stmt->error;
  }
}else{
  echo "username already taken";
}
?>
Mi servirebbe che mi cercasse nel database sql, se in fase di registrazione del nuovo utente (lo chiamo Pippo e si registra con username Pippo1) ha inserito nella casella Recruit un username di un altra persona (Gianni, username Gianne22 e ha ID=1). Nel caso Pippo avesse messo nella casella Recruit Gianne22 ( non é obbligatorio che vada a vedere maiuscole o minuscole) gli venga inserito nell intersezione riga e colonna "recruit del database l'Id di Gianni.
allego spiegazione in inglese che forse é piu chiara
PHP:
That is, lets say there is an account called Alice (account id 10) and she recruits Bob (account id 20). The following SQL query would do the trick.
update account set recruiter = 10 where id = 20;

HTML:
<div class="signin-form">
  <div class="container">
    <div class="row">
      <div class="col-lg-4 col-md-6 col-sm-8 col-xs-12">
        <div class="mytitle">Account Registration</div>
        <div id="error"></div>
        <div id="success"></div>
        <form action="functions/register.php" class="form-signin" method="POST" id="register-form">
          <div class="form-group">
            <label for="user">Username:</label>
            <input type="text" id="user" class="form-control" name="user" required>
            <span id="check-e"></span>
          </div>
          <div class="form-group">
            <label for="pass">Password:</label>
            <input type="password" id="pass" class="form-control" name="pass" required>
          </div>
          <div class="form-group">
            <label for="pass2">Confirm Password:</label>
            <input type="password" id="pass2" class="form-control" name="pass2" required>
          </div>
          <div class="form-group">
            <label for="email">Email:</label>
            <input type="email" id="email" class="form-control" name="email" required>
          </div>
          <div class="form-group">
             <label for="ecruit">Recruit:</label>
            <input type="recruit" id="recruit" class="form-control" name="recruit">
          </div>
          <div class="form-group">
            <button type="submit" class="btn btn-default" name="btn-save" id="btn-submit">
              <span class="glyphicon glyphicon-log-in"></span> &nbsp; Create Account
            </button>
          </div>
        </form>
      </div>
    </div>
  </div>
</div>
allego anche dbconf.php nel caso servisse a qualcosa
PHP:
<?php
$dbhost = "127.0.0.1";
$dbuser = "root";
$dbpass = "ascent";
$accdb = "auth";
$chardb = "characters";

$conn = mysqli_connect($dbhost, $dbuser, $dbpass, $accdb);
?>
un grazie anticipato a chi cercherá di aiutarmi.
 
Ultima modifica di un moderatore:

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.449
338
83
@Azalyn
Quando posti del codice non devi usare sempre il tag
Codice:
ma va usato il tag
PHP:
per il codice PHP e il tag
HTML:
per il codice HTML.
Il tag CODE va usato per il codice generico
 
Discussioni simili
Autore Titolo Forum Risposte Data
A [PHP] Controllo nome utente form di registrazione PHP 4
D Problema script registrazione utente php mysql PHP 14
F [PHP]Errore registrazione PHP 8
Tommy03 Generare file PHP dopo registrazione PHP 2
G [PHP] Revisione codice per registrazione PHP 8
B [PHP] Mail di Avvenuta registrazione PHP 4
damiano.f [PHP] variabili su immagine e registrazione dati su db PHP 0
L [PHP] Registrazione/Logina la psw deve contenere.. PHP 3
ANDREA20 [PHP] problema registrazione PHP 50
P [PHP] come criptare una password in un form di registrazione PHP 4
F Codic e php visibile su form registrazione utenti PHP 2
P Problema con file di registrazione in php, non funziona e dà continui errori PHP 0
I Registrazione PHP PHP 14
G Inserimento array proveniente da un modulo di registrazione con PHP e MySQL PHP 6
F script php form registrazione PHP 13
M Pagina di registrazione e login in php PHP 4
A form registrazione + php + alert javascript Javascript 6
F Cerco Hosting con VECCHIE versioni di php Hosting 0
Cosina Captcha php PHP 1
S passare un valore da un form a un file .php con metodo post PHP 4
N php msyql PHP 6
N php problemi a visualizzare video PHP 3
A menu a tendina php PHP 1
D protezione cartelle: blocco visualizzazione/scaricamento contenuto, ma abilitazione utilizzo dati da parte di file .php presenti sul sito Web Server 1
F Php date_diff PHP 1
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
C Wp-admin a file php WordPress 5
Lino80 [Retribuito] Cerco programmatore php per modifica/inserimento funzione/valori da un plugin importer wordpress Offerte e Richieste di Lavoro e/o Collaborazione 0
csi Inviare file jpg in locale alla stampante con php PHP 0
M Passaggio variabili array php su un tasto jq PHP 3
E Php aggiornamento tabella PHP 9
G phpmailer e php 8.1 con estensione mysqli PHP 6
M Invio dati database via email php PHP 0
K [php] Problema con inner join PHP 4
K [php]form invio dati PHP 0
P Codifica caratteri speciali mysql php PHP 0
K [PHP] Problema con variabili concatenate. PHP 1
E Stampante termica escpos-php PHP 6
JeiMax Modifica codice php personalizzato PHP 2
G Come modificare un pdf in php PHP 1
U Link a doppio file PHP PHP 0
E PHP & jQuery PHP 8
N Passare array da php a javascript PHP 5
F Applicazione PHP/MySQL per prenotazioni: limitare il numero massimo di posti prenotabili PHP 20
L tipo boolean non funzionante su mariadb (mysql). E codice php 7.4. PHP 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
M PHP/MySQL - Estrarre valori min e max di ogni gruppo PHP 5
F Php e fatturazione elettronica PHP 0
P lanciare script asp (o php) da jquery Javascript 1
Couting95 inserire dati da un file di testo in una tabella in php PHP 1

Discussioni simili