現在、私のプロジェクトで作業していて、データベースから画像を表示するのに苦労しています。私はそれを確認する際、画像の名前はphpmyadminのに店だったが、その私のtable.Here上でそれを表示していない私のコードphp-データベースに画像を挿入し、phpを使って表示する方法
テーブルの上に画像を表示するデータベース
で画像を保存している
現在、私のプロジェクトで作業していて、データベースから画像を表示するのに苦労しています。私はそれを確認する際、画像の名前はphpmyadminのに店だったが、その私のtable.Here上でそれを表示していない私のコードphp-データベースに画像を挿入し、phpを使って表示する方法
テーブルの上に画像を表示するデータベース
で画像を保存している
これを試すことができます。 ファイルImage.php
<?php
// verify request id.
if (empty($_GET['id']) || !is_numeric($_GET['id'])) {
echo 'A valid image file id is required to display the image file.';
exit;
}
$imageId = $_GET['id'];
//connect to mysql database
if ($conn = mysqli_connect('localhost', 'root', 'root', 'test')) {
$content = mysqli_real_escape_string($conn, $content);
$sql = "SELECT type, content FROM images where id = {$imageId}";
if ($rs = mysqli_query($conn, $sql)) {
$imageData = mysqli_fetch_array($rs, MYSQLI_ASSOC);
mysqli_free_result($rs);
} else {
echo "Error: Could not get data from mysql database. Please try again.";
}
//close mysqli connection
mysqli_close($conn);
} else {
echo "Error: Could not connect to mysql database. Please try again.";
}
if (!empty($imageData)) {
// show the image.
header("Content-type: {$imageData['type']}");
echo $imageData['content'];
}
?>
ファイル:Upload.php
<?php
/**
* Upload an image to mysql database.
*/
// Check for post data.
if ($_POST && !empty($_FILES)) {
$formOk = true;
//Assign Variables
$path = $_FILES['image']['tmp_name'];
$name = $_FILES['image']['name'];
$size = $_FILES['image']['size'];
$type = $_FILES['image']['type'];
if ($_FILES['image']['error'] || !is_uploaded_file($path)) {
$formOk = false;
echo "Error: Error in uploading file. Please try again.";
}
//check file extension
if ($formOk && !in_array($type, array('image/png', 'image/x-png', 'image/jpeg', 'image/pjpeg', 'image/gif'))) {
$formOk = false;
echo "Error: Unsupported file extension. Supported extensions are JPG/PNG.";
}
// check for file size.
if ($formOk && filesize($path) > 500000) {
$formOk = false;
echo "Error: File size must be less than 500 KB.";
}
if ($formOk) {
// read file contents
$content = file_get_contents($path);
//connect to mysql database
if ($conn = mysqli_connect('localhost', 'root', 'root', 'test')) {
$content = mysqli_real_escape_string($conn, $content);
$sql = "insert into images (name, size, type, content) values ('{$name}', '{$size}', '{$type}', '{$content}')";
if (mysqli_query($conn, $sql)) {
$uploadOk = true;
$imageId = mysqli_insert_id($conn);
} else {
echo "Error: Could not save the data to mysql database. Please try again.";
}
mysqli_close($conn);
} else {
echo "Error: Could not connect to mysql database. Please try again.";
}
}
}
?>
<html>
<head>
<title>Upload image to mysql database.</title>
<style type="text/css">
img{
margin: .2em;
border: 1px solid #555;
padding: .2em;
vertical-align: top;
}
</style>
</head>
<body>
<?php if (!empty($uploadOk)): ?>
<div>
<h3>Image Uploaded:</h3>
</div>
<div>
<img src="image.php?id=<?=$imageId ?>" width="150px">
<strong>Embed</strong>: <input size="25" value='<img src="image.php?id=<?=$imageId ?>">'>
</div>
<hr>
<? endif; ?>
<form action="<?=$_SERVER['PHP_SELF']?>" method="post" enctype="multipart/form-data" >
<div>
<h3>Image Upload:</h3>
</div>
<div>
<label>Image</label>
<input type="hidden" name="MAX_FILE_SIZE" value="500000">
<input type="file" name="image" />
<input name="submit" type="submit" value="Upload">
</div>
</form>
</body>
</html>
交換ライン
mysqli_connect( 'ローカルホスト'、 'ルート'、 'ルート'、 '試験')
と
mysqli_connect( 'your host'、 'your username'、 'your password'、 'your database name')
をファイルに保存してもう一度保存してください。
これで完了です。
nice SQLインジェクション穴 –
コードをテキストとして送信してください。 – MrDarkLynx
'mysql_ *'関数を使わないでください。現バージョンのPHPでは廃止され削除されています。その代わりに、mysqli_ *またはPDOと_preparedステートメントを使用します。 – MrDarkLynx
'画像を車両から選択してください。image =" $ image "'あなたの質問は間違っています。 'image = "$ image" 'または' imagagerame、vehicle from imagecontent from image = "$ image" ' – ruhul