Skocz do zawartości
  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

Mativve

Wyświetlenie opisu hasła po jego poprawnej walidacji MySQL i PHP

Promowane odpowiedzi

Mativve    1,238

Witajcie

Chciałbym się spytać, czy istnieje lub w jaki sposób zrobić coś takiego że:

 

Jest strona z inputem w którym gdy wpiszę dane hasło, wyświetla mi się ono na stronie np: z bazy danych gdzie jest ono wcześniej zapisane w taki sposób: "hasło" "opis szukanego hasła".

W jaki sposób coś takiego zrobić. Pierwszy raz mam styczność z php :P także każda pomoc się przyda :) 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
if ($_POST['send'] == 1) {
	$haslo = mysql_real_escape_string(htmlspecialchars($_POST['haslo']));
	$r = mysql_query("SELECT * FROM xxx WHERE haslo='$haslo'");
	$haslo = mysql_fetch_assoc($r);
	echo $haslo['opis_hasla'];
} else {
	echo '<form method="post" action="" role="form">
				<input type="text" class="form-control" name="haslo">
				<input type="hidden" name="send" value="1" />
				<button type="submit">Szukaj</button>
			</form>';
}

 

jeśli dobrze Cię zrozumiałem to powyższy kod powinien zadziałać ;)

  • Super 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Mativve    1,238

@Michał Piotr 1 sprawa: W twoim kodzie pokazuje mi się komunikat: "Notice: Undefined index: send in F:\MATEUSZ\_xampp\htdocs\_ec\index.php on line 5" a w linii 5 mam:

if ($_POST['send'] == 1) {

2 sprawa: jest opcja, żebyś pokazał mi, jak utworzyć tabelę w phpmyadmin aby twój kod działał :P ?

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Mativve    1,238

@Michał Piotr Dobra naprawiłem to tak, że zamiast:

$_POST['send'] == 1

dałem:

isset($_POST['send']) && $_POST['send'] == 1

 

A tabelę stworzyłem, nazwałem ją ecode i zmieniłem zamiast xxx. Tylko teraz mam problem z utworzeniem kolumn w tabeli, nie wiem jak je ustalić :/ 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Teraz do utworzonej tabeli wrzucasz swoje hasła i ich opisy :D

np:

 

haslo    |    opis_hasla

-------------------------------

mativve | administrator serwisu

pecetowicz | forum komputerowe

majnkraft | cudowna gra

 

Rozumiesz? :D

 

@edit

 

tutaj masz zrzut z phpmyadmin:

ZsbVQQY.jpg

 

więc gdy użyjesz $haslo['opis_hasla'] wyświetli Ci się wartość rubryczki po prawej stronie.

Gdybyś dodał kolejną rubryczkę, np. zrodlo_hasla i przypisał do niego Wikipedia, wolna encyklopedia to używając $haslo['zrodlo_hasla'] otrzymasz Wikipedia, wolna encyklopedia

Edytowane przez Michał Piotr
  • Lubię to! 1
  • Super 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Mativve    1,238

Okej, dodałem sobie do kolumn odpowiednio: test i This is test value. Formularz przechodzi lecz pojawia się error:

mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in

Skorzystałem z tego: 

 

Spoiler

 

 

I pojawił się błąd taki: 

"You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''code' WHERE haslo='test'' at line 1"

 

Teraz patrze na wujka google jak to rozwiązać ;) 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Mativve    1,238

Gdzieś popołudniu Ci wyśle bo już nie ma mnie na kompie ;) napiszę na pw, zeby postow nie nabijac

  • Lubię to! 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
rogue    579
7 godzin temu, Mativve napisał:

Gdzieś popołudniu Ci wyśle bo już nie ma mnie na kompie ;) napiszę na pw, zeby postow nie nabijac

Jak nie nabijać postów? Pisz tutaj, to może ktoś kiedyś z tego skorzysta :)

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Mativve    1,238

@Miszczu123 Po zmianie na mysqli mam więcej błędów:

Spoiler

image.thumb.png.ceb99a1a60c151795103216f5f6e3515.png

 

i odpowiednio linijki

 

Spoiler

image.thumb.png.068a83572188f3f0eb63bce963265892.png

 

 

@Michał Piotr @rogue Po zrobieniu tego co miszczu napisał mam więcej errorów dlatego wracam do mysql :) i nadal pojawia się ten sam błąd co wkleiłem tutaj

 

 

Spoiler

sql.thumb.jpg.fb2b81529ae1792851e21614a155fff0.jpg

 

Edytowane przez Mativve

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

nie mam pojęcia czy to zadziała ale spróbuj usunąć ' z zapytania:

 

$r = mysql_query("SELECT * FROM 'code' WHERE 'haslo='$haslo'")

na

$r = mysql_query("SELECT * FROM code WHERE haslo='$haslo'")

 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Mativve    1,238

Łączenie:

Spoiler
<?php
$servername = "127.0.0.1";
$username = "root";
$password = "";
$dbname = "ecode";
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
else{
    echo("Connection success!<br>");
}
?>

 

 

Wyświetla mi się connection success.

Hmm, i może miszczu miał rację żeby zmienić na mysqli bo conn posiada wartość new mysqli. Tylko że potem błędy się pojawiają :/ te co dałem w tym poście

Edytowane przez Mativve

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
$conf_['db_server'] = 'localhost';
$conf_['db_user'] = 'admin';
$conf_['db_pass'] = 'haslo';
$conf_['db_name'] = 'nazwa_bazy';
$db_connect = @mysql_connect ($conf_['db_server'], $conf_['db_user'], $conf_['db_pass']);
$db_select = @mysql_select_db ($conf_['db_name'], $db_connect);

spróbuj tego

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach
Salva    3,347

No to jak nie wiesz, to dlaczego "każesz" mu spróbować powyższego kodu?

 

@ wycisza błędy danej funkcji / metody. Tzn. że te błędy nadal będą, tyle tylko, że nie będą wyświetlane na ekranie monitora. A tak się nie programuje.

Dodatkowo mysql_ jest metodą przestarzałą i nie korzysta się już z tego. Zalecane użycie, to właśnie mysqli_ albo PDO.

 

@Mativve, opisz problem dokładniej mi na PW, później wrzucę rozwiązanie tutaj.

  • Lubię to! 2
  • Wrr 1

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony.


×