01. marts 2007 - 20:24Der er
37 kommentarer og 1 løsning
Script til upload af mysql-data
Vil lige spørge om hjælp: Jeg har en text-fil med backup-data til Mysql. Indlæses teksten i en forespørgsel i PHPMyAdmin virker det hele fint. Men jeg vil gerne gøre det uafhængigt af PHPMyAdmin (eller mere brugervenligt) og søger derfor et script, der via en "gennemse" knap, indlæser text-filen med backupdata, og på den måde updaterer MySQL.
Jeg har får også en tom side: Har prøvet med denne kode:
<?php require 'mysql.php'; mysql_connect("mysql04.talkactive.net","????","????") or die (mysql_error()); mysql_select_db("?????") or die (mysql_error()); $sql_string = file_get_contents($_FILES['upload']['tmp_name']); mysql_query($sql_string); ?>
Det ser umiddelbart bedre ud nu, idet jeg kan uploade filen. Men det ser ikke ud til, at der sker nogen ændringer i MySQl. Jeg har tjekket via PHPMyAdmin. Når jeg har valgt filen og trykker på Upload-knappen, går der få millisekunder, og siden er herefter opdateret. Filen jeg prøver at indlæse, er et større MySQL-dump på 100 kb., som genopretter tabeller og poster. Nogen gode forslag???
Det gør ingen forskel. Stadig ingen opdateringer. Jeg har altså en tekstfil, som jeg har kaldt "DB-dump.sql". Den indeholder backup-data fra MySQl. Eksempelvis:
DROP TABLE IF EXISTS kalender; CREATE TABLE kalender ( id int(11) NOT NULL auto_increment, month varchar(250), year int(11), date varchar(250), tilk varchar(255) NOT NULL, aftale_id varchar(255) NOT NULL, PRIMARY KEY (id) ); INSERT INTO kalender VALUES ( '215', '5', '2007', '31', '12:00', 'IyPsyGAQO5Olld6C00Na'); osv.
Det gør desværre ingen forskel. Bare lige for at understrege det, så fungerer det fint i PHPMyAdmin. Altså hvor jeg kopierer hele indholdet af filen ind i en "forespørgsels vindue" og vælger "Udfør".
jjdk er farmand og mal_dk er sønnik. Men det er altså "jjdk", der spørger her. Mal_dk blev oprettet i går på "jjdk's" PC. Det har drillet med auto-brugernavne. Undskyld forvirringen.
Så lykkedes det. Når jeg har uploadet Sql-filen, får jeg følgende svar: "Query was empty" Kan det ændres, så der står "Opdateringen lykkedes". Ellers tusind tak for hjælpen. Sender du et svar.
Jeg anvender fortsat koden ovenfor, men nu driller det. Når jeg har uploadet SQL-filen og vil prøve igen, får jeg ingen input-form, men en fejl. Skal der ske en eller anden form for nul-stilling.
Vi må hellere afslutte - jeg er meget glad for dine input: Jeg prøvede det sidste med "if(!empty...", men jeg får fortsat samme fejl. Min kode ser sådan her ud, men er usikker på om det nye er placeret korrekt. Sender du et svar:
Sidste linje er tom - bortset fra 3 x mellerum. Jeg har andre tomme linjer, men der er ingen mellemrum. (de giver ingen fejl). Så jeg må kigge nærmere i mit backup-script, som laver sql-filen og de 3 mellemrum til sidst.
Nu har jeg fjernet de 3 mellemrum i den sidste linje, som altså er helt tom nu. Men jeg får fejlen alligevel - så det er ikke mellemrummene, der gør det. Bare lidt underligt, da der er mange andre tomme linjer i sql-filen. De giver ikke fejl, men kun den sidste linje.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.