如何显示存储在数据库中作为背景在Twitter上重复的图像?(How to display a re

2019-07-17 18:11发布

我想显示的背景图像(通过使用CSS重复)的方式在Twitter上相同的,但问题是,我从MySQL数据库中检索它和CSS无法处理src的背景标签。

我如何可以检索从MySQL数据库的图像(我知道如何从数据库中检索到显示图像,但在这里,我想以不同的方式显示出来),即显示的图像作为机身底色,图像应重复仿佛CSS repeat的语句是用过的。 就像在twitter.com上。

我的代码是在PHP和MySQL。 我需要的URL,因为这影像从数据库中检索。

Answer 1:

你不能重复<img src="#" />所以,你需要你的PHP文件中使用CSS,你可以不喜欢它

<style>
body {
   background-image: url('<?php echo $whatever; ?>') !important;
   background-repeat: repeat;
}
</style>

要么你能做的就是

做了一个样式.php扩展。

<link rel='stylesheet' type='text/css' href='css/stylesheet.php' />

在页面的顶部提这

<?php
    header("Content-type: text/css; charset: UTF-8");
?>

现在,您可以相应地设置变量

<?php
    header("Content-type: text/css; charset: UTF-8");
    $background = "$imgsrc"; /* Retrieve your image here */

    /*Now simply use the $background variable for setting the body background */
?>


Answer 2:

您可以在两个步骤做到这一点。

创建接受的参数通过一个唯一的ID,该行中包含的显示图像以识别PHP脚本。 这个脚本会提取数据库中的图像,并用适当的MIME类型发送的代码,使浏览器理解。 以此方式,应用类的容器(或身体标记),并显示像的背景:

.backgroundTile { background-image: url('/path/to/php-image-render-script.php?image_id=1212') !important; background-repeat: repeat; }

例如PHP脚本(源- http://cookbooks.adobe.com/post_Display_an_image_stored_in_a_database_ PHP -16637.html ):

<?php require_once('Connections/testConn.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }

  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}

$colname_getImage = "-1";
if (isset($_GET['image_id'])) {
  $colname_getImage = $_GET['image_id'];
}
mysql_select_db($database_testConn, $testConn);
$query_getImage = sprintf("SELECT mimetype, image FROM images WHERE image_id = %s", GetSQLValueString($colname_getImage, "int"));
$getImage = mysql_query($query_getImage, $testConn) or die(mysql_error());
$row_getImage = mysql_fetch_assoc($getImage);
$totalRows_getImage = mysql_num_rows($getImage);
header('Content-type: ' . $row_getImage['mimetype']);
echo $row_getImage['image'];
mysql_free_result($getImage);
?>


文章来源: How to display a repeated image stored in database on background as on Twitter?