php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.11.2008, 14:57  
Benutzer
 
Registriert seit: 31.10.2008
Beiträge: 53
Mila2008 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Datenbank löschen

Hallo,

um Datenbank zu löschen, habe ich ein Programm geschrieben. Ich bekomme zwar die Meldung (Erfolgreich gelöscht), aber Datenbank xxxx ist immer noch vorhanden. Es wäre nett, wenn mir jemand sagen wurde was ich falsch mache

Hier mein Script:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<?php
function DeleteDB()
{
global $db_connection;

$sql = 'DROP DATABASE $mysqldb';
if(!mysql_query($sql))
{
echo "Database $mysqldb was successfully dropped\n";
}
else
{
echo 'Error dropping database:' . mysql_error() . "\n";
}

}

?>
</head>
<body>

<?php
include 'DBconnectionFkt.php';
$mysql = "xxxx";
DeleteDB($mysql);


?>
</body>
</html>


Vielen Dank!!!
Mila2008 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.11.2008, 14:59  
Erfahrener Benutzer
 
Benutzerbild von byFd
 
Registriert seit: 06.11.2008
Beiträge: 154
byFd befindet sich auf einem aufstrebenden Ast
Standard

nimm mal das ! vor dem mysql_query weg. Oder vertausche deine if zweige...
byFd ist offline   Mit Zitat antworten
Alt 13.11.2008, 15:01  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

und die DB wird nicht gelöscht weil Variablen in einfachen Anführungszeichen nicht geparst werden
cycap ist offline   Mit Zitat antworten
Alt 13.11.2008, 15:13  
Benutzer
 
Registriert seit: 31.10.2008
Beiträge: 53
Mila2008 befindet sich auf einem aufstrebenden Ast
Standard

Ich wieder!

Leider funktioniert nicht! Wenn ich es nicht als Funktion schreibe, dann funktioniert es.

Gruß
Mila2008 ist offline   Mit Zitat antworten
Alt 13.11.2008, 15:15  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Ähm wie wärs wenn du der Funktion auch Parameter gibst?
cycap ist offline   Mit Zitat antworten
Alt 13.11.2008, 15:54  
Benutzer
 
Registriert seit: 31.10.2008
Beiträge: 53
Mila2008 befindet sich auf einem aufstrebenden Ast
Standard

Entschuldige bitte, ich bin Anfänger in PHP-Pogrammierung. Ich weiß nicht, ob ich das richtig verstanden habe. Also durch einfache Anführungszeichen wird dem Parsen entzogen. Heißt das, dass ich die Variblen in doppleten Anführungszeichen nehmen soll???
Wenn ja, dass funktioniert auch nicht.

Gruß
Mila2008 ist offline   Mit Zitat antworten
Alt 13.11.2008, 15:58  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Die doppelten Anführungszeichen würden dich schonmal weiterbringen. Außerdem übergibst du an DeleteDB eine Variable die DeleteDB aber gar nicht erwartet.
cycap ist offline   Mit Zitat antworten
Alt 13.11.2008, 16:46  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
Zitat von Mila2008 Beitrag anzeigen
Also durch einfache Anführungszeichen wird dem Parsen entzogen. Heißt das, dass ich die Variblen in doppleten Anführungszeichen nehmen soll???
siehe PHP: Strings - Manual
Ausserdem würde ich den Datenbanknamen für mysql noch in backticks (`) setzen, damit auch ansonsten unerlaubte Zeichen/Worte verwendet werden können.
PHP-Code:
$sql "DROP DATABASE `$mysqldb`"
Zitat:
if(!mysql_query($sql))
{
echo "Database $mysqldb was successfully dropped\n";
}
else
{
echo 'Error dropping database:' . mysql_error() . "\n";
}
Anders herum: Wenn mysql_query() false liefert, ist ein Fehler aufgetreten.
David ist offline   Mit Zitat antworten
Alt 13.11.2008, 16:47  
Neuer Benutzer
 
Registriert seit: 11.11.2008
Beiträge: 7
Moguai befindet sich auf einem aufstrebenden Ast
Standard

Hi,

im Prinzip wurde ja alles gesagt und anscheinend obwohl kein "Hurra! Es klappt" von Dir kam der Threat als erledigt makiert.

Trotzdem hier nochmal das funktionierende Script:

PHP-Code:
<?php 

function DeleteDB($mysql)


global 
$db_connection;

$sql 'DROP DATABASE '.$mysql.'';
if(
mysql_query($sql)) 
{
echo 
"Database $mysql was successfully dropped\n";
}
else 
{
echo 
'Error dropping database: ' mysql_error() . "\n";


}

?>
</head>
<body>

<?php 
include 'DBconnectionFkt.php';
$mysql "xxxx";
DeleteDB($mysql);


?>

Du hattest vergessen die an die Funktion übergebene Variable auch dort anzunehmen, ausserdem hast Du mal mit $mysql und mal mit $mysqldb gearbeitet. Im SQL Synthax war auch ein kleiner Fehler.


EDIT: Sorry für doppelte Ausführung aber mein Post hat sich mit dem von David überschnitten

Viele Grüße
Moguai ist offline   Mit Zitat antworten
Alt 13.11.2008, 17:11  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
$sql = 'DROP DATABASE '.$mysql.'';
Der rote Teil hat keine Auswirkung, ausser Prozessor und Arbeitsspeicher einen Tick wärmer werden zu lassen
David ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Erste Zeile aus Datenbank löschen [molsch] PHP Tipps 2008 1 21.09.2008 22:53
Hilfe, Datenbank nimmt keine neuen Daten und alte nicht löschen! XTC PHP Tipps 2008 32 11.06.2008 14:15
Datenbank Inhalt löschen alfonsodiecko Datenbanken 2 08.05.2008 08:26
Userdaten temporär in Datenbank ablegen und löschen... ssm PHP Tipps 2006 16 27.07.2006 09:14
Vor dem löschen abfragen ob man wirklich löschen will PHP Tipps 2005-2 1 05.09.2005 11:54
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:33
[Erledigt] mysql datenbank anlegen...aber WIE??? PHP Tipps 2005-2 0 05.08.2005 19:33
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:32
probleme beim löschen aus der datenbank DDogg PHP Tipps 2005 7 27.04.2005 11:59
[Erledigt] Sicherheitsabfrage beim Löschen aus DB PHP Tipps 2005 6 05.04.2005 10:24
20 Tage alte Datenbank einträge löschen Datenbanken 6 10.01.2005 11:38
wo ist der Fehler? Eintrag aus Datenbank löschen Ente PHP Tipps 2004 2 24.08.2004 15:04
Wie kann sich ein Benutzer aus der Datenbank selbst löschen? PHP Tipps 2004 13 13.08.2004 22:24
Bestimmte einträge aus Datenbank löschen PHP Tipps 2004 2 05.08.2004 00:17
löschen in einer datenbank PHP Tipps 2004 12 05.07.2004 00:19

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
sql datenbank löschen php, drop database, datenbankinhalte löschen

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:32 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum