Na een hele poos zonder succes gezocht te hebben naar iemand die me eventueel kon helpen een systeem te maken waarmee ik inlog tickets kan verkopen voor mijn hotspot ga ik zelf maar een waging pogen ;)
Ik heb vrijwel geen ervaring met PHP & MySQL dus ik hoop dat jullie me een beetje kunnen helpen hier en daar, af en toe.
Ik dacht eerst maar eens beginnen ervoor zorgen dat er een voorraad aan geldige vouchers of tickets in een database zitten.
Ik heb met behulp van HeidiSQL een database gemaakt genaamd TEST en een ID table en een VOUCHERS table
/*!40100 SET CHARACTER SET latin1*/;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0*/;
#
# Database structure for database 'test'
#
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET latin1 */;
USE `test`;
#
# Table structure for table 'vouchers'
#
CREATE TABLE `vouchers` (
`id` int(3) NOT NULL auto_increment,
`tickets` varchar(50) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=99 /*!40100 DEFAULT CHARSET=latin1 COMMENT='Hotspot tickets'*/;
#
# Dumping data for table 'vouchers'
#
# (No data found.)
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS*/;
Ik heb uit mijn hotspot router het bestandje gedownload met een aantal geldige inlog vouchers en dat in de root van de te maken site gezet zodat het toekomstige script de vouchers kan vinden. En toen op zoek gegaan hoe ik die tickets netjes in de table vouchers krijg.
Ik heb na wat gezoek via google en php.net het volgende in elkaar geknutseld.
<?php
// ----
$con = mysql_connect("xxxxxx","test","xxxxxx");
if (!$con)
{
die('Kan niet verbinden: ' . mysql_error());
}
mysql_select_db("test", $con);
// ----
$row = 1;
$handle = fopen("vouchers.csv", "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
// echo "<p> $num fields in line $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
// echo $data[$c] . "<br />\n";
mysql_query("INSERT INTO vouchers (tickets)
VALUES ('$data[$c]')");
}
}
fclose($handle);
// ----
mysql_close($con);
// ----
?>
Dit lever wel op dat de text in het vouchers bestand in de vouchers table terecht komt maar het willekeurig erin gezet is het ziet er dus niet uit.
Het vouchers bestand ziet er als volgt uit:
# Voucher Tickets 1..25 for Roll 1
# Nr of Roll Bits 16
# Nr of Ticket Bits 10
# Nr of Checksum Bits 5
# magic initializer 888335219 (32 Bits used)
# Character Set used 2345678abcdefhijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ
#
" 3NyXnuLbU2e3"
" qFQWYpWGTBD"
" hWenFcwZS2F"
" Z2qjararqwa3"
" AHGVy6rMqe"
" 45mHHbtt4Ai3"
" jx3E7Xf7Zkc"
" qByHbPnL8Ec"
" Wi8dX7m2PMW"
" b6AYhUEZ5te"
" ccyjEicaVXc3"
" XUncKPSHNtF"
" tPheWBrvRr53"
" 5M75xVPJJxT"
" YeYzmhDMy7m"
" k6AXnr6haGm"
" VjGuEkdMFdh3"
" tyhYGBMtw2E"
" QvB2hEabK2x"
" 8EDVQmjuMPJ"
" LfjxAFUPnbc"
" y2ZbsdBi2Sr"
" qrFYPmVAvXa3"
" RySJiE7DPKJ"
" ChbXmNHnifc3"
De bedoeling is dat de vouchers elk in een eigen record terecht komen en de text die aan het begin staat word overgeslagen.
Mijn vraag is hoe kan ik dit bereiken?
Ik hoop dat jullie me willen helpen want ik zal nog vele vele vragen hebben komende tijd.