Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyniki kwerendy SQL na stronie
Forum PHP.pl > Forum > Przedszkole
Indoctrine
Witam

Muszę stworzyć dość prosty mechanizm, który pozwoli mi na wyświetlanie wyniku SELECT z bazy MySQL.

Założenia:

Na stronie mam pole (form), gdzie wpisuję wartość z jednej kolumny w konkretnej tabeli.
Wynik pojawia się jako wiersz, zawierający określone na stałe wartości z kolumn pozostałych.

Tabela ma powiedzmy trzy kolumny:
ID, Imię, Nazwisko

Na przykład:
1, Jan, Kowalski
2, Anna, Nowak

Pole do wpisania na stronie służy do wpisania ID. Po wpisaniu 2 powinno pojawić się:
Anna Nowak


Na razie zrobiłem form do wpisu tak:

<form action="index.php" method="post">
ID:<br />
<input type="text" name="ID" />
<input type="submit" value="Sprawdz" />
</form>

<?php
// odebranie danych z form
$ID = $_POST['ID'];

if($ID) {

// połączenie z bazą danych
$connection = @mysql_connect('localhost', 'user', 'password')
or die('Brak połączenia z serwerem MySQL');
$db = @mysql_select_db('baza_danych', $connection)
or die('Nie mogę połączyć się z bazą danych');

// robię kwerendę
$pokaz = @mysql_query("SELECT imie, nazwisko FROM `ludzie` WHERE `ID`= '$ID'");

if($pokaz) echo ; // TUTAJ CHCĘ WYŚWIETLIĆ TO CO MI ZWRÓCIŁA KWERENDA - czy to się da w ogóle w ten sposób?
else echo "Błąd nie udało się wyświetlić rekordu";

mysql_close($connection);
}

?>
Spawnm
http://php.net/mysql_fetch_array
com
po pierwsze korzystaj z bbcode, po drugie po raz kolejny powiem
  1. if($ID) {
skąd wy to bierzecie? empty poza tym najpierw sprawdż czy wgl $_POST został wykonany, a co do wyświetlenia wyników zapytania to użyj np
http://php.net/manual/pl/function.mysql-fetch-row.php lub http://www.php.net/manual/pl/function.mysql-fetch-assoc.php

btw zainteresuj się PDO a nie w mysql siedzisz wink.gif

if($pokaz) is only true smile.gif
Indoctrine
Dzięki za podpowiedzi (przepraszam, że z opóźnieniem snitch.gif).

Mam kolejny problem ze zbliżonego tematu.

Muszę dokonać aktualizacji tabeli.

Robię tak:


<form action="inserty5.php" method="post">
Modyfikacja:<br />
<input type="text" name="IDENT" />
ID</br><b><input type="text" name="SAP" />
SAP</br><b><input type="submit" value="Zmien" />
</form>


<?php
$ID2 = $_POST['IDENT'];
$SAP = $_POST['SAP'];
$con=mysqli_connect('localhost', 'user', 'pass', 'baza');
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

mysqli_query($con,"UPDATE SAP SET SAP='444' WHERE ID='43901'");


mysqli_close($con);
?>

Działa na sztywno - zmienia wartość w kolumnie SAP na 444 w wierszu gdzie ID jest 43901.

Ale chciałbym to zrobić dynamicznie - tak jak jest wyżej: wpisuję w pole IDENT numer, w pole SAP wartość i tabelka aktualizuje mi wiersz gdzie IDENT wynosi tyle ile wpiszę o wartość w kolumnie SAP jaką wpiszę w pole SAP.

Wpisuję:

mysqli_query($con,"UPDATE SAP SET SAP='@SAP' WHERE ID='@ID2'");

Niestety to nie działa snitch.gif

Co robię źle?
nospor
SAP='@SAP'
Co to jest?? Nie umiesz do tekstu dodac zmiennej?
$jakistekst = "blabla $jakaszmienna balbala";
ale to podstawy podstaw

Lektura obowiazkowa
http://pl1.php.net/manual/en/language.types.string.php

przenosze na przedszkole
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.