Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Problem z bazą
Forum PHP.pl > Forum > Przedszkole
Adiqus
Mam problem z bazą MySQL. A mianowicie zrobiłem kod, który po wpisaniu do pola tekstowego Loginu i wysłaniu go do skryptu PHP ma "wyciągnąć" z bazy i wypisać na ekran Hasło przyporządkowane do tego loginu. Proszę się nie śmiać z tego tematu. Chodzę na kurs PHP tam coś takiego przerabialiśmy, mnie jednakże nie udało się tego zrobić. Próbowałem w domu i po pewnym czasie (z pomocą taty) udało mi się dojść co gdzie i jak. Jednakże mam problem. Zamiast wypisywać hasła - wypisuje 2x pierwszą literę loginu, 2x pierwszą literę hasła i 2x pierwszą cyfrę ID (ID zrobiłem, gdyż skrypt z założenia miał posiadać ID, potem postanowiłem zrobić coś prostrzego, a stwierdziłem, że jeszcze te pole mi się przyda). Do rzeczy:

Kod:

index.php:
  1. <?php
  2. include 'formularz.html';
  3. if($_POST['login']!=NULL){
  4. include 'config.php';
  5. $user = $db->prepare("select t.* from login_pass t where t.login =?");
  6. $user -> bindValue (1,$_POST['login']);
  7. $user->execute();
  8. $ala = $user->fetch();
  9. foreach($ala as $x){
  10.  echo  $x[password];
  11. }
  12. }
  13. ?>


formularz.html:
  1. <form action="index.php" method="POST">
  2. Wyświetl info o userze: <input type="text" name="login"> <input type="submit" value="Start!">
  3. </form>


config.php:
  1. <?php
  2. $db = new PDO(
  3.  'mysql:dbname=uzytkownicy;host=localhost',
  4.  'root'
  5. );
  6. ?>


Może ktoś pomóc mi rozwiązać problem questionmark.gif Z góry dzięki ...
nospor
nie:
$ala = $user->fetch();
foreach($ala as $x){
echo $x[password];
}

a:
  1. <?php
  2. $ala = $user->fetch();
  3. print_r($ala);
  4. ?>

I teraz sobie zobacz co zawiera $ala a nastepnie sie zastanow czy dobrze zrobiles foreach() winksmiley.jpg
Adiqus
no rzeczywiście coś nie teges z tą alą ... tongue.gif

jak wypisuje zmienną $ala to mi się pokazuje: Array ( [login] => admin [0] => admin [password] => admin22 [1] => admin22 [id] => 2 [2] => 2 ) ...

(Login: admin, hasło: admin22, id: 2)

To coś chyba nie tak ma być ... Jak to poprawić questionmark.gif

foreach() jest chyba dobrze zrobiony (tak też było na kursie i działało), jest coś nie tak z tą zmienną chyba...
nospor
no chyba dostales odpowiednią odpowiedź....
fetch() zwraca ci rekord. jak chcesz sobie wyswietlic cos z tego rekordu to:
echo $ala['login'];
echo $ala['password'];

no jasniej juz sie nie da...
Adiqus
dzięki ... wykładowca na moim kursie zrobił skrypt z tym fetch() ale nie podał jak on działa, więc nie wiedziałem ...

teraz działa jak ma działać ...

i obeszło się bez foreach() smile.gif

100x dzięki ...

można zamknąć temat ... offtopic.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.