2014-12-18 7 views
-4

Я только что сделал код, который дает мне случайное число от 1 до 57, и в зависимости от указанного числа я получаю значение, связанное с номером, и удаляет это число из массива.Удалить случайную запись из базы данных

Вот объяснение каждого диапазона номеров:

http://i.stack.imgur.com/O1Lby.png

А вот код:

<!DOCTYPE html> 
 
<html lang="en"> 
 
<head> 
 
    <title>Test</title> 
 
    <meta charset="UTF-8"> 
 
    
 
</head> 
 
<body> 
 
     <p id="coche"></p> 
 
     <input type="button" value="Click aqui!" onclick="coches()"> 
 
</body> 
 
<script> 
 
var idx = 0; 
 
var randomNums = []; 
 

 
for (var i = 0; i < 57; i++) { 
 
    randomNums.push(i); 
 
} 
 

 
shuffle(randomNums); 
 

 
function shuffle(array) { 
 
    var currentIndex = array.length, 
 
    temporaryValue, randomIndex; 
 

 
    // Mientras queden elementos que barajar... 
 
    while (0 !== currentIndex) { 
 

 
    // Elige un elemento restante... 
 
    randomIndex = Math.floor(Math.random() * currentIndex); 
 
    currentIndex -= 1; 
 

 
    // Y lo intercambias con un elemento actual. 
 
    temporaryValue = array[currentIndex]; 
 
    array[currentIndex] = array[randomIndex]; 
 
    array[randomIndex] = temporaryValue; 
 
    } 
 

 
    return array; 
 
} 
 

 
function coches() { 
 
    if (randomNums[idx] <= 3) { 
 
    document.getElementById("coche").innerHTML = "Audi " + randomNums[idx]; 
 
    } else if (randomNums[idx] <= 9) { 
 
    document.getElementById("coche").innerHTML = "BMW " + randomNums[idx]; 
 
    } else if (randomNums[idx] <= 17) { 
 
    document.getElementById("coche").innerHTML = "Mercedes " + randomNums[idx]; 
 
    } else { 
 
    document.getElementById("coche").innerHTML = "Seat " + randomNums[idx]; 
 
    } 
 

 
    idx++; 
 
} 
 
</script> 
 
</html>

Вещь, теперь мне нужно, чтобы прочитайте базу данных и удалите ее из базы данных вместо массива. Вот пример дампа базы данных.

CREATE DATABASE IF NOT EXISTS `playmo-demo` /*!40100 DEFAULT CHARACTER SET utf8 */; 
 
USE `playmo-demo`; 
 
-- MySQL dump 10.13 Distrib 5.6.19, for osx10.7 (i386) 
 
-- 
 
-- Host: localhost Database: playmo-demo 
 
-- ------------------------------------------------------ 
 
-- Server version \t 5.1.73 
 

 
/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */; 
 
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */; 
 
/*!40101 SET @[email protected]@COLLATION_CONNECTION */; 
 
/*!40101 SET NAMES utf8 */; 
 
/*!40103 SET @[email protected]@TIME_ZONE */; 
 
/*!40103 SET TIME_ZONE='+00:00' */; 
 
/*!40014 SET @[email protected]@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; 
 
/*!40014 SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; 
 
/*!40101 SET @[email protected]@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; 
 
/*!40111 SET @[email protected]@SQL_NOTES, SQL_NOTES=0 */; 
 

 
-- 
 
-- Table structure for table `premios` 
 
-- 
 

 
DROP TABLE IF EXISTS `premios`; 
 
/*!40101 SET @saved_cs_client  = @@character_set_client */; 
 
/*!40101 SET character_set_client = utf8 */; 
 
CREATE TABLE `premios` (
 
    `id_premios` int(255) NOT NULL, 
 
    `id_paquete` varchar(255) CHARACTER SET utf8 COLLATE utf8_spanish_ci DEFAULT NULL, 
 
    `nombre_premio` varchar(255) CHARACTER SET utf8 COLLATE utf8_spanish_ci DEFAULT NULL, 
 
    `cantidad` varchar(255) CHARACTER SET utf8 COLLATE utf8_spanish_ci DEFAULT NULL, 
 
    `acumulado` varchar(45) CHARACTER SET utf8 COLLATE utf8_spanish_ci DEFAULT NULL, 
 
    `rank` varchar(45) CHARACTER SET utf8 COLLATE utf8_spanish_ci DEFAULT NULL, 
 
    PRIMARY KEY (`id_premios`), 
 
    KEY `id_paquete` (`id_paquete`), 
 
    KEY `nombre_premio` (`nombre_premio`), 
 
    CONSTRAINT `premios_ibfk_1` FOREIGN KEY (`nombre_premio`) REFERENCES `banco_imagenes` (`nombre_premio`) 
 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 
 
/*!40101 SET character_set_client = @saved_cs_client */; 
 

 
-- 
 
-- Dumping data for table `premios` 
 
-- 
 

 
LOCK TABLES `premios` WRITE; 
 
/*!40000 ALTER TABLE `premios` DISABLE KEYS */; 
 
INSERT INTO `premios` VALUES (1,'1','Copa','8','1','4'),(2,'1','No Premio','3','4','1'),(3,'1','Botella','5','9','2'),(4,'1','Plato','7','16','3'); 
 
/*!40000 ALTER TABLE `premios` ENABLE KEYS */; 
 
UNLOCK TABLES; 
 
/*!40103 SET [email protected]_TIME_ZONE */; 
 

 
/*!40101 SET [email protected]_SQL_MODE */; 
 
/*!40014 SET [email protected]_FOREIGN_KEY_CHECKS */; 
 
/*!40014 SET [email protected]_UNIQUE_CHECKS */; 
 
/*!40101 SET [email protected]_CHARACTER_SET_CLIENT */; 
 
/*!40101 SET [email protected]_CHARACTER_SET_RESULTS */; 
 
/*!40101 SET [email protected]_COLLATION_CONNECTION */; 
 
/*!40111 SET [email protected]_SQL_NOTES */; 
 

 
-- Dump completed on 2014-12-18 18:03:29

Зная, что:

id_premios = Является ли число от 1 до 57

nombre_premio = имя автомобиля, например Audi

+2

Ваш текущий код не имеет ничего общего с базами данных, попробуйте подключиться к нему и выполнить ожидаемое поведение. – Jonast92

ответ

0

Вы должны использовать язык на стороне сервера, такой как PHP и подготовленные операторы MySQLi.

<?php 
$servername = "localhost"; 
$username = "username"; 
$password = "password"; 
$dbname = "myDB"; 

// Create connection 
$conn = mysqli_connect($servername, $username, $password, $dbname); 
// Check connection 
if (!$conn) { 
    die("Connection failed: " . mysqli_connect_error()); 
} 

    /* Create a prepared statement */ 
if($stmt = $mysqli -> prepare("DELETE from `premios` where id_premios = ?")) { 

/* Bind parameters 
s - string, b - boolean, i - int, etc */ 
$stmt -> bind_param("i", $randomInteger); 

if (mysqli_query($conn, $sql)) { 
    echo "Record deleted successfully"; 
} else { 
    echo "Error deleting record: " . mysqli_error($conn); 
} 

mysqli_close($conn); 
?> 

Я не проверял это, но он должен поставить вас на правильный путь.

+0

Итак, как мне выполнить этот код при каждом нажатии кнопки? С javascript? – Eokizo

+1

Вы используете AJAX, пожалуйста, смотрите здесь: http://stackoverflow.com/questions/7165395/call-php-function-from-javascript Вам нужно понять JavaScript, PHP, и иметь базовое представление о AJAX, чтобы сделать это. JavaScript - клиентский (это означает, что он запущен на машине пользователя), PHP и базы данных являются серверными (это означает, что они запускаются на сервере). JavaScript не может взаимодействовать с сервером. –

Смежные вопросы