Wątek przeniesiony 2016-01-07 14:51 z PHP przez dzek69.

Wyświetlanie tabeli za pomocą funkcji

0

Czy w PHP da się wyświetlić za pomocą funkcji rekordy z bazy danych? Napisałem coś takiego, ale nie jestem pewny czy to dobry sposób...

$conn=new mysqli('localhost', 'root', 'pass', 'test');

function wyswietl($tabela)
{
	$query = $GLOBALS['conn']->query("SELECT * FROM $tabela"); 

	while ($row = $guery->fetch_assoc()) 
	{ 
    return $row["pole1"]."[explode]".$row["pole2"]."[explode]".$row["pole3"]; 
	} 	
}

$pole = explode("[explode]", wyswietl('tabela1'));

echo $pole[0].' '.$pole[1].' '.$pole[2]; 

(pisane na szybko, nie jestem pewny czy to w ogóle ma szanse zadziałać :-) )

1

To może sprawdź?
Albo jeszcze lepiej - ogarnij wiedzę na określony temat, a potem coś pisz? Programowanie to nie radosne uderzanie w literki na klawiaturze bez myślenia ;)

PS. Nie, nie ma. Cały kod wskazuje na zerową wiedzę (tablice? A nie łączenie w stringa i explodowanie), niekorzystanie z dostępnych narzędzi takich jak IDE (literówka w zmiennej, brak kojarzenia nazewnictwa), niby while, ale zwracasz jeden rekord (nie wiesz zapewne jak działają funkcje), jakiś GLOBALS wzięty z tyłka, swoją drogą antywzorzec od 15 lat.

0

Ok, radośnie uderzając w literki na klawiaturze bez myślenia stworzyłem coś takiego i o dziwo robi prawie to co chciałem :D
Poza tym, to co złego jest w GLOBALS? Użyłem go tak, jak jest pokazane w manualu...

 
$conn=new mysqli('localhost', 'root', 'pass', 'test');
function wyswietl($tabela)
    {
    $sql = 'SELECT * FROM '.$tabela;
	$result = $GLOBALS['conn']->query($sql);
	while ($row = $result->fetch_assoc()) {
	return array($row["pole1"], $row["pole2"], $row["pole3"], $row["pole4"]);
	}
	$conn->close();
    }

$wyswietl = wyswietl('test');
echo $wyswietl[0].' '.$wyswietl[1].' '.$wyswietl[2].' '.$wyswietl[3];
0

Nie uzywa się czegoś takiego to po pierwsze. Po drugie nie używa się mysqli tylko PDO. Po trzecie w każdym jednym manualu na każdej stronie wielkimi literami powinno być napisane
SQL INJECTION - CO TO JEST I JAK SIE BRONIC Poczytaj zwłaszcza o drugim i trzecim punkcie i weź jakąś dobrą książkę. Polecam odwiedzic laracast.com za 9$ jest duzo materiałów dla poczatkujacych wysokiej jakosci.

1 użytkowników online, w tym zalogowanych: 0, gości: 1