Tags
Forum
Artikler
Brugere
Stil spørgsmål
1
online
Login
Husk mig
Uden at ødelægge sin linux installation?
Tags:
php
test
Bruger #16584
@ 26.02.15 11:59
0
Hej til gruppen
Hvordan tester man sin PHP kode der frembringer MySQL uden risikoen for at ødelægge sin linux installation?
Mvh,
Thomas
6
svar postet i denne tråd vises herunder
4
indlæg har modtaget i alt
6
karma
Sorter efter stemmer
Sorter efter dato
3
Bruger #17081
@ 26.02.15 17:44
1
1.258
Hvis du vil køre det på en seperat maskine, hvorfor ikke bare bygge en vagrantbox eller hente en box som du kan teste på, det er nok det nemmeste.
1
Bruger #17081
@ 26.02.15 12:20
1
1.258
MySQL kan vel ikke ødelægge en server? Kun data. Så du kan tage en backup af dit data, eller køre koden på en anden database med kopi af dataen.
1
Bruger #17081
@ 26.02.15 12:55
1
1.258
du behøver vel egentlig ikke lave en fil du kalder via browseren ? Kan du ikke kalde den fra terminalen ?
1
Bruger #17719
@ 27.02.15 21:06
-23
Linux administratoren der spørger.
Hvad er det helt præcist du ville Thomas som kræver root rettigheder?
Jeg bruger ikke selv PHP så du må lige give nogle flere detaljer om hvad målet overhoved er.
0
Bruger #16584
@ 26.02.15 12:35
0
Men den kan vel "garble" tingene op. G2G.
Dette er koden:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Database creation in PHP</title>
</head>
<body>
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$startDB= 0;
$endDB= 119;
$PrefixDB="prefixDB";
$spreadsheetCSV="databases.csv";
$csvFile = fopen($spreadsheetCSV, "a");
// Create connection
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
die("Connection open failed: " . $conn->connect_error);
}
for($LocalDB = $startDB; $LocalDB <= $endDB; $LocalDB++)
{
//$LocalDB=system("mkpasswd 'date +%N' ");
$DatabaseName= ${PrefixDB} . ${LocalDB};
// Create DATABASE
$sql= "CREATE DATABASE " . "\'" . ${DatabaseName} . "\'" . ";";
if ($conn->query($sql) === TRUE) {
echo "DATABASE created successfully";
} else {
die ("Error creating DATABASE: " . $conn->error);
}
// Create USER
//$LocalUsername = substr(system("mkpasswd 'date +%N'"), 13);
$LocalUsername = ${DatabaseName};
$sql="CREATE USER " . "\'" . ${LocalUsername} . "\'" . "@" . "\'" . ${servername} . "\'" . ";";
if ($conn->query($sql) === TRUE) {
echo "USER created successfully";
} else {
die ("Error creating USER: " . $conn->error);
}
// Create PASSWORD
$LocalPassword = substr(system("mkpasswd 'date +%N'"), 13);
$sql="IDENTIFIED BY PASSWORD " . "\'" . ${LocalPassword} . "\'" . ";";
if ($conn->query($sql) === TRUE) {
echo "PASSWORD created successfully";
} else {
die ("Error creating PASSWORD: " . $conn->error);
}
// GRANT ALL ON LocalDB.* TO USERNAME
$sql = "GRANT ALL ON " . ${DatabaseName} . ".*" . " TO " . "\'" . ${LocalUsername} . "\'" . "@" . "\'" . ${servername} . "\'" . ";";
if ($conn->query($sql) === TRUE) {
echo "Granting created successfully";
} else {
die ("Error creating GRANTING: " . $conn->error);
}
fputcsv($csvFile, array((string)$LocalDB, $DatabaseName, $LocalUsername, $LocalPassword));
};
// Close database connection
$conn->close();
// Close csv spreadsheet file
fclose($csvFile);
?>
</body>
</html>
0
Bruger #16584
@ 26.02.15 13:47
0
Nemlig, jeg vil kalde den med "sudo php -f generate_databases_in_php.php"
Mvh,
Thomas
Men hvad med en Knoppix 7.4.2 Live Linux DVD?
kan man teste sin LAMP kode med den?
Mvh,
Thomas.
Indlæg senest redigeret d.
26.02.2015 13:56
af Bruger #16584
Karma barometer (30 dage)
Modtaget
Givet
X
Favorit hos
Forum tråde
Artikler
Tilføj til dine favorit tags
Fjern fra dine favorit tags