PHP和mysql将表行中的一个值添加到变量

时间:2016-05-23 17:10:55

标签: php mysql

所以我有一个问题,我几天都在绞尽脑汁。我们有一个项目,我们正在建立一个互联网商店,我到了我需要将产品放在数据库中的部分。我们需要通过管理员放置一些由表单输入的字段,并且插入的图片需要移动到商店文件夹,其名称应该与products表中的产品ID相对应。在数据库中应该是图片网址,以便我们可以将其链接到商店页面。

我在这里遇到了重大问题,因为我无法访问数据库并复制要添加到图像的产品ID。我的表也没有输出任何内容,但我责怪我的旧计算机上的坏wamp设置,因为新的计算机正在修复。

<?php 
session_start();
if (isset($_POST['unos'])){
$veza=new mysqli("localhost","G03","sifra","internetprodavnica");
mysqli_set_charset($veza,"utf8");
$naziv=$_POST['ime'];
$kratakopis=$_POST['kratakopis'];
$dugiopis=$_POST['dugiopis'];
$cena=$_POST['cena'];
$kategorija=$_POST['kategorija'];


$Id=mysqli_query("SELECT IDProizvoda FROM products ORDER BY IDProizvoda DESC LIMIT 1");


if ($_FILES['slika']['type'] = 'image/jpg'){ $type=".jpg"; }
if ($_FILES['slika']['type'] = 'image/jpeg'){ $type=".jpeg"; }
$path= "slike/".$Id.$type;
  if (isset($_FILES['slika'])) {
     if(is_uploaded_file($_FILES['slika']['tmp_name'])) {
      $rezultat=move_uploaded_file($_FILES['slika']['tmp_name'], $path); }}

$upit="INSERT INTO internetprodavnica.proizvodi(ime,kratakopis,dugiopis,cena,kategorija,slika) VALUES ('$naziv','$kratakopis','$dugiopis','$cena','$kategorija','$path')";
$rez=$veza->query($upit); }

?>

对不起,如果它的外语,我不会翻译所有变量名称会对你理解我的代码产生影响。

可变路径是图像网址名称。文件夹slike(意思是图像)和添加的id和扩展类型。我想检查类型,但显然它只是将类型更改为最后一个问题的类型,它并不特别打扰我,我仍然要么用空白名称复制图像或输出错误。无论如何都存在错误,但图像通常无论如何都会复制。

如果我删除了mysqli_query图片名称

SELECT IDProizvoda FROM proizvodi ORDER BY IDProizvoda DESC LIMIT 1

我认为问题在于行

$Id=mysqli_query("SELECT IDProizvoda FROM products ORDER BY IDProizvoda DESC LIMIT 1");

非常感谢帮助,因为无论何时尝试它都无效。

1 个答案:

答案 0 :(得分:0)

您需要先建立连接:

$Id=mysqli_query($veza, "SELECT IDProizvoda FROM products ORDER BY IDProizvoda DESC LIMIT 1");

或者您可以使用以下内容作为对象进行访问:

$Id=$veza->query("SELECT IDProizvoda FROM products ORDER BY IDProizvoda DESC LIMIT 1");

http://php.net/manual/en/mysqli.query.php

在您的情况下,您需要获取数据以使用enxt:

$query=$veza->query("SELECT IDProizvoda FROM products ORDER BY IDProizvoda DESC LIMIT 1");
$ID=$query->fetch_object()->IDProizvoda;