• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Nie działające dodawanie użytkownika do bazy danych.

VPS Starter Arubacloud
0 głosów
215 wizyt
pytanie zadane 4 kwietnia 2017 w PHP przez Q_Nick Mądrala (5,010 p.)

Chcę dodać uużytkownka do bazy danych przez skrypt, ale nie wiem dlaczego nie działa. Brak jakich kolwiek powiadomień, skrypt wykonuje się do końca. Nie mam pojęcia o co chodzi.

<?php
    require_once '../core/core.php';
    session_start();
    
    $user=save($_POST['user']);
    $password=save($_POST['password']);
    $password2=save($_POST['password2']);
    $email1=save($_POST['email1']);
    $email2=save($_POST['email2']);
    $regulamin=save($_POST['regulamin']);
    
    $email=$email1.'@'.$email2;
    
    $ok=true;
    
    if(strlen($user)<5)
    {
        $ok=false;
        
        $_SESSION['alert_user']=alert_red('Nazwa użytkownika powinna zawierać co najmniej 5 znaków i nie zawierać polskich znaków.');
        header('Location: ../login.php');
    }
    
    
    db_connect_scripts();
    
    $rep=mysqli_num_rows(mysqli_query($mysqli, "SELECT * FROM users WHERE user='$user'"));
    
    if($rep>0)
    {
        $ok=false;
        
        $_SESSION['alert_user']=alert_red('Nazwa użytkownika jest już zajęta.');
        header('Location: ../login.php');
    }
    
    mysqli_free_result($rep);
    
    if(strlen($password)<6)
    {
        $ok=false;
        
        $_SESSION['alert_haslo']=alert_red('Hasło powinno zawierać przynajmiej 6 znaków.');
        header('Location: ../login.php');
    }
    
    if($password!=$password2)
    {
        $ok=false;
        
        $_SESSION['alert_hasla']=alert_red('Hasła nie są takie same.');
        header('Location: ../login.php');
    }
    
    if($regulamin!='on')
    {
        $ok=false;
        
        $_SESSION['alert_reg']=alert_red('Musisz zaakceptować regulamin.');
        header('Location: ../login.php');
    }
    
    if((strlen($email1)<3) OR (strlen($email2)<5))
    {
        $ok=false;
        
        $_SESSION['alert_email']=alert_red('Podaj poprawny email.');
        header('Location: ../login.php');
    }
    
    if($ok==false)
    {
        exit();
    }
    
    if($ok==true)
    {
        
        
        $password=password_hash($password, PASSWORD_DEFAULT);
        
        $sql="INSERT INTO users
                VALUES(
                '',
                '$user',
                '$password',
                '$email',
                '100',
                '',
                '1',
                '0',
                ''
                )";
        
        mysqli_query($mysqli, $sql);
        
        $_SESSION['alert']=  alert_green('Rejestracja udana. Możesz się zalogować.');
        
        //$_SESSION['alert']=  alert_green('Rejestracja udana. Potwierdź adres poprzez link podany w adresie zawartym w wiadomości wysłanej na podany przez Ciebie adres.');
        
        mysqli_close($mysqli);
        
        //header('Location: ../login.php');
    }
     
?>

 

1 odpowiedź

0 głosów
odpowiedź 16 kwietnia 2017 przez piotrsz109 Stary wyjadacz (13,730 p.)

1. Pokaż kod utworzenia połączenia.

2.  Kiedy piszesz $sql = insert po nazwie tabeli w nawiasie podajesz po przecinku nazwy pól do których wpisujesz wartości.

NP: 

$sql = "INSERT INTO `posty` (`Data`, `Tytul`, `Zawartosc`, `GlownyObrazek`, `Wyswietlenia`, `Szkola`) VALUES ('Now()', '$tytul', '$Content', '$GlownyObrazek', '0', '$Szkola');";

 

komentarz 18 kwietnia 2017 przez Q_Nick Mądrala (5,010 p.)
Wina była rozsypanego servera mysql :/ Uruchom i włącz komputer magicznie zadziałało

Podobne pytania

0 głosów
2 odpowiedzi 1,951 wizyt
0 głosów
3 odpowiedzi 1,232 wizyt
pytanie zadane 7 lipca 2015 w PHP przez Mateusz Analityk Stary wyjadacz (13,710 p.)
0 głosów
1 odpowiedź 1,005 wizyt

92,964 zapytań

141,929 odpowiedzi

321,162 komentarzy

62,298 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...