2014-12-08 106 views
-2

它是我第一次一起使用php和mysql。這裏是我的數據庫的腳本:插入php + mysql

CREATE SCHEMA IF NOT EXISTS `Alinfo_Express` ; 
USE `Alinfo_Express` ; 

CREATE TABLE IF NOT EXISTS `Alinfo_Express`.`Categorias` (
    `idCategoria` INT(11) NOT NULL, 
    `titulo` VARCHAR(128) NOT NULL, 
    `descricao` TEXT NOT NULL, 
    PRIMARY KEY (`idCategoria`)) 
ENGINE = InnoDB 
DEFAULT CHARACTER SET = latin1; 

CREATE TABLE IF NOT EXISTS `Alinfo_Express`.`Produtos` (
    `idProduto` INT(11) NOT NULL, 
    `nome` VARCHAR(256) NOT NULL, 
    `descricao` TEXT NOT NULL, 
    `precoUnidade` FLOAT NOT NULL, 
    `qtdEstocada` INT(11) NOT NULL, 
    `emDestaque` BIT(1) NOT NULL, 
    `idCategoria` INT(11) NOT NULL, 
    PRIMARY KEY (`idProduto`), 
    INDEX `fk_Produtos_Categorias1_idx` (`idCategoria` ASC), 
    CONSTRAINT `fk_Produtos_Categorias1` 
    FOREIGN KEY (`idCategoria`) 
    REFERENCES `Alinfo_Express`.`Categorias` (`idCategoria`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB 
DEFAULT CHARACTER SET = latin1; 

CREATE TABLE IF NOT EXISTS `Alinfo_Express`.`Usuarios` (
    `idUsuario` INT(11) NOT NULL, 
    `nome` VARCHAR(256) NOT NULL, 
    `sexo` CHAR(1) NOT NULL, 
    `cpf` VARCHAR(256) NOT NULL, 
    `rg` VARCHAR(256) NOT NULL, 
    `email` VARCHAR(256) NOT NULL, 
    `endereco` VARCHAR(256) NOT NULL, 
    `CEP` VARCHAR(256) NOT NULL, 
    `bairro` VARCHAR(256) NOT NULL, 
    `cidade` VARCHAR(256) NOT NULL, 
    `estado` VARCHAR(256) NOT NULL, 
    `senha` VARCHAR(256) NOT NULL, 
    `tipo` CHAR(1) NOT NULL, 
    PRIMARY KEY (`idUsuario`)) 
ENGINE = InnoDB 
DEFAULT CHARACTER SET = latin1; 

CREATE TABLE IF NOT EXISTS `Alinfo_Express`.`Compra` (
    `idCompra` INT NOT NULL, 
    `valor` DECIMAL NOT NULL, 
    `tipoPagamento` VARCHAR(45) NOT NULL, 
    `dataCompra` DATETIME NOT NULL, 
    `idUsuario` INT(11) NOT NULL, 
    `idProduto` INT(11) NOT NULL, 
    PRIMARY KEY (`idCompra`), 
    INDEX `fk_Compra_Usuarios_idx` (`idUsuario` ASC), 
    INDEX `fk_Compra_Produtos1_idx` (`idProduto` ASC), 
    CONSTRAINT `fk_Compra_Usuarios` 
    FOREIGN KEY (`idUsuario`) 
    REFERENCES `Alinfo_Express`.`Usuarios` (`idUsuario`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_Compra_Produtos1` 
    FOREIGN KEY (`idProduto`) 
    REFERENCES `Alinfo_Express`.`Produtos` (`idProduto`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

這裏是我的代碼:

$MySQLi->query("INSERT INTO Produtos (idProduto, nome, descricao, precoUnidade,qtdEstocada, emDestaque, idCategoria) VALUES ($cod, '$nome', '$desc', $preco,$qtd, $dest, '$url', $cat);"); 

我不知道爲什麼它不工作了。有很長一段時間我不使用數據庫,這可能是我的問題。

+1

它會工作,我們也沒有嘗試。 – 2014-12-08 04:24:36

+0

查詢是否正確? – MCGBra 2014-12-08 04:25:29

+0

對不起,我忘了描述我的數據庫的字段。我會編輯。 – MCGBra 2014-12-08 04:26:24

回答

1

在查詢中有幾個錯誤。嘗試在phpmyadmin中執行。試試這個

$MySQLi->query("INSERT INTO Produtos (idProduto, nome, descricao, precoUnidade,qtdEstocada, emDestaque, idCategoria) VALUES ($cod, '$nome', '$desc', $preco, $qtd, $dest, '$url', $cat)"); 

它應該工作。在phpmyadmin中,它會告訴你錯誤。與我們分享。

+0

我沒有意識到我有8個值,但7列。感謝您的迴應。 – MCGBra 2014-12-08 04:49:40

0

在這裏,你可以用這個,我希望根據您所張貼在這裏什麼

$MySQLi->query("INSERT INTO Produtos (idProduto, nome, descricao, precoUnidade,qtdEstocada, emDestaque, idCategoria) VALUES ('".$cod."', '".$nome."', '".$desc.'", '".$preco."','".$qtd."', '".$dest."', '".$url."', '".$cat."')");