nego mi vrati kod iz skripte u Memo1, a kada pokrenem skriptu u localhostu u browseru i unesem (id) onda mi u labelu prikaže ime korisnika kako treba. Kako da prikažem rezultat pretrage to jest u ovom slučaju (Ime korisnika) šta nije u redu ?
Delphi Search.pas
procedure TForm1.Button1Click(Sender: TObject);
var
data: TIdMultiPartFormDataStream;
begin
data:= TIdMultiPartFormDataStream.Create;
try
data.AddFormField('id',Edit1.Text);
data.AddFormField('search','Pronadji');
IdHTTP1.HandleRedirects:=True;
IdHTTP1.Request.ContentType:='application/x-www-form-urlencoded';
Memo1.Lines.Text:= IdHTTP1.Post('http://localhost/search.php?id=', data);
finally
data.Free;
end;
end;
PHP search.php
<?php
$dsn = 'mysql:host=localhost;dbname=test_db';
$username = 'root';
$password = '';
try{
// Povezivanje sa MySQL bazom
$con = new PDO($dsn,$username,$password);
$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (Exception $ex) {
echo 'Nije povezan !'.$ex->getMessage();
}
$id = '';
$ime = '';
function getPosts()
{
$posts = array();
$posts[0] = $_POST['id'];
$posts[1] = $_POST['ime'];
return $posts;
}
//Traži i prikaži podatke
if(isset($_POST['search']))
{
$data = getPosts();
if(empty($data[0]))
{
echo 'Unesite (Id) korisnika za pretragu !';
} else {
$searchStmt = $con->prepare('SELECT * FROM korisnici WHERE id = :id');
$searchStmt->execute(array(
':id'=> $data[0]
));
if($searchStmt)
$user = $searchStmt->fetch();
if(empty($user))
{
echo 'Nema podataka za ovaj (Id) !';
}
$id = $user[0];
$ime = $user[1];
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Pretraga</title>
<style type="text/css">
</style>
</head>
<body>
<form action="search.php" method="POST"><br>
<input type="text" name="id" placeholder="Id" value="<?php echo $id;?>"><br><br>
Ime:<font color="green"><label for="fname"><?php echo $ime;?></label></font><br><br>
<input type="submit" style= "cursor:pointer" name="search" value="Pronadji">
</form>
</body>
</html>