Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Indikace zda je v databázi mySql proveden záznam.

To jsou ale úplné základy v pohodě dohledatelné na netu.
Toto je například výstup (cidlo.php) jako png obrázek (ano.png zelený, ne.png červený) podle toho, jestli je nalezen řádek s id v tabulce v databázi nebo ne.

<?php
$con = mysqli_connect("127.0.0.1", "jmeno", "heslo", "databaze");
$query = mysqli_query($con, "SELECT id FROM tabulka WHERE id='".$_GET["id"]."'");
if(mysqli_num_rows($query) > 0){
	header("Content-type: image/png");
	$im = imagecreatefrompng("ano.png");
	imagepng($im);
	imagedestroy($im);
} else {
	header("Content-type: image/png");
	$im = imagecreatefrompng("ne.png");
	imagepng($im);
	imagedestroy($im);
}

a do html vložit:

<img src="cidlo.php?id=4">

kde to číslo 4 je id.
(poznámka: ošetři si vstup)
Edit:
Verze PDO s ošetřeným vstupem:

$pdo = new PDO('mysql:dbname=databaze;host=localhost', 'jmeno', 'heslo');
$dotaz = $pdo->prepare("SELECT 1 FROM tabulka WHERE id = ?");
$dotaz->execute(array($_GET["id"]));
$existuje = $dotaz->fetchColumn();
if($existuje){
	header("Content-type: image/png");
	$im = imagecreatefrompng("ano.png");
	imagepng($im);
	imagedestroy($im);
} else {
	header("Content-type: image/png");
	$im = imagecreatefrompng("ne.png");
	imagepng($im);
	imagedestroy($im);
}

... a ještě zkrácená verze:

<?php
$pdo = new PDO('mysql:dbname=databaze;host=localhost', 'jmeno', 'heslo');
$dotaz = $pdo->prepare("SELECT 1 FROM tabulka WHERE id = ?");
$dotaz->execute(array($_GET["id"]));
$existuje = $dotaz->fetchColumn();
header("Content-type: image/png");
$im = imagecreatefrompng($existuje?"ano.png":"ne.png");
imagepng($im);
imagedestroy($im);

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny