1

私は現在、ファイルディレクトリを持つ複数の画像アップローダーに取り組んでいます。MySQL内にファイル名を保存したいのですが。

これらの変数(画像名)をphpを使用してテーブル内に保存するにはどうすればよいですか?

PHPを介して変数を取得するにはどうすればよいですか?

アップローダーによって生成されたURL:

ファイル名:

  • 4ff4bfd02c241.jpg
  • 4ff4bfd02c242.jpg

テーブル名: urlimage

id: autoincrement
image_name

私はこれを通してパスと名前をエコーアウトすることができます:

$images = explode(',', $_GET['i']);

$path = Configuration::getUploadUrlPath('medium', 'target');

foreach ($images as $image) {

    echo '<div><p>' . $path . $image . '</p><img src="' . $path . $image . '" /></div>';
}

?>
4

1 に答える 1

1
$images = explode(',', $_GET['i']);

$path = Configuration::getUploadUrlPath('medium', 'target');


if(is_array($images)){

  $sql = "INSERT INTO `urlimage` (`image_name`) VALUES ";

  foreach ($images as $image) {

    //echo '<div><p>' . $path . $image . '</p><img src="' . $path . $image . '" /></div>';
    $value[] = "(".$path.$image.")"; // collect imagenames
  }

  $sql .= implode(',', $value).";"; //build query

  //don't know how you send queries, you should use a kind of mysqli-functionality
  queryfunction($sql);   
}

さらに、ブラウザによっては長さの制限があるため、$ _GETではなく$_POSTを使用することを検討する必要があります(一部のURLは255文字の後にカットされます)。
また、ユーザー定義のコンテンツをDBに直接入れないでください。なんらかのエスケープが必要になります(http://php.net/manual/en/function.mysql-real-escape-string.php)。

于 2012-07-04T22:44:34.580 に答える