/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Eksekver eksporteret sql fra php
Fra : Bo Kamp Dudek


Dato : 25-03-04 19:39

Hejsa

Jeg har et demo-website kørende i php/mysql, hvor jeg har lavet en
knap, som kan gendanne sitet. Knappen fungerer ikke endnu.

Min idé er, at jeg via phpmyadmin kan eksportere alle tabeller til en
*.sql fil. Filen uploader jeg så til filsystemet, hvor den skal ligge
fast. Når brugeren klikker på 'Gendan site' skal php så kunne åbne
*.sql på serveren og kørende de forskellige inserts, der ligger i
denne.

Hvordan skal jeg gribe det an?

Mvh
Bo Dudek
www.bodudek.dk


 
 
Kim Andersen (26-03-2004)
Kommentar
Fra : Kim Andersen


Dato : 26-03-04 09:16

> Min idé er, at jeg via phpmyadmin kan eksportere alle tabeller til en
> *.sql fil. Filen uploader jeg så til filsystemet, hvor den skal ligge
> fast. Når brugeren klikker på 'Gendan site' skal php så kunne åbne
> *.sql på serveren og kørende de forskellige inserts, der ligger i
> denne.
>
> Hvordan skal jeg gribe det an?

PHP filen, skaber forbindelse til MySQL, tømmer alt data i den database som
du bruger til demo der efter åbner filen og læser en linie afgangen og
udføre den SQL sætning som står i linien.
Hvis filen er stor, kan man læse det hele op i et array og udføre alle SQL
sætninger fra sit array.

/Kim



Bo Kamp Dudek (28-03-2004)
Kommentar
Fra : Bo Kamp Dudek


Dato : 28-03-04 09:19

>> Hvordan skal jeg gribe det an?
>
>PHP filen, skaber forbindelse til MySQL, tømmer alt data i den database som
>du bruger til demo der efter åbner filen og læser en linie afgangen og
>udføre den SQL sætning som står i linien.

prøver lige på en anden måde.. jeg har denne *.sql fil liggende på
serveren.. jeg har lavet en knap på et website, der hedder 'Gendan
website', og ved klik på denne, skal de forskellige inserts fra min
*.sql køres..

mit site er bygget op vha. divblokke, og jeg includer brugerens valgte
side.. når brugeren så klikker på 'Gendan website' så kan jeg altså
sagtens include min *.sql, men det er jo ikke nok..

nogen, der forstår mit problem?

Mvh
Bo Dudek
www.bodudek.dk


Kristian Thy (28-03-2004)
Kommentar
Fra : Kristian Thy


Dato : 28-03-04 09:29

Bo Kamp Dudek uttered:
> prøver lige på en anden måde.. jeg har denne *.sql fil liggende på
> serveren.. jeg har lavet en knap på et website, der hedder 'Gendan
> website', og ved klik på denne, skal de forskellige inserts fra min
> *.sql køres..
>
> mit site er bygget op vha. divblokke, og jeg includer brugerens valgte
> side.. når brugeren så klikker på 'Gendan website' så kan jeg altså
> sagtens include min *.sql, men det er jo ikke nok..
>
> nogen, der forstår mit problem?

Prøv at udføre en query i stil med

SOURCE "sti/til/gendan.sql";

\\kristian
--
PROGRAMMER [n]: a device for converting coffee into software.

Kristian Thy (28-03-2004)
Kommentar
Fra : Kristian Thy


Dato : 28-03-04 09:32

Bo Kamp Dudek uttered:
>>PHP filen, skaber forbindelse til MySQL, tømmer alt data i den database som
>>du bruger til demo der efter åbner filen og læser en linie afgangen og
>>udføre den SQL sætning som står i linien.
>
> prøver lige på en anden måde.. jeg har denne *.sql fil liggende på
> serveren.. jeg har lavet en knap på et website, der hedder 'Gendan
> website', og ved klik på denne, skal de forskellige inserts fra min
> *.sql køres..
>
> mit site er bygget op vha. divblokke, og jeg includer brugerens valgte
> side.. når brugeren så klikker på 'Gendan website' så kan jeg altså
> sagtens include min *.sql, men det er jo ikke nok..

Det var heller ikke det Kim foreslog. Hans metode var som følger:

1) Indlæs sql-filen, fx med file_get_contents, ind i en string.
2) Del den op ved ; og put delstrengene ind i et array.
3) Eksekver hver delstreng som en query.

\\kristian
--
To err is human. To moo, bovine.

Peter Brodersen (28-03-2004)
Kommentar
Fra : Peter Brodersen


Dato : 28-03-04 13:14

On 28 Mar 2004 08:31:34 GMT, Kristian Thy <thy@it.edu> wrote:

>1) Indlæs sql-filen, fx med file_get_contents, ind i en string.
>2) Del den op ved ; og put delstrengene ind i et array.
>3) Eksekver hver delstreng som en query.

Der skal laves lidt mere fornuft end som så, da ovenstående vil fejle,
hvis man bruger ; noget andet sted i sin query, fx som værdier i
felter.

Da det er lidt et pillearbejde at lave det selv, hvis man ikke er vant
til PHP, vil jeg næsten anbefale PHPMyAdmin, der i forvejen ka' finde
ud af at ta' en blok af queries som input (og selv dele korrekt op).

--
- Peter Brodersen

Ugens sprogtip: slitage (og ikke slidtage)

Bo Kamp Dudek (30-03-2004)
Kommentar
Fra : Bo Kamp Dudek


Dato : 30-03-04 20:18

>Der skal laves lidt mere fornuft end som så, da ovenstående vil fejle,
>hvis man bruger ; noget andet sted i sin query, fx som værdier i
>felter.
>
>Da det er lidt et pillearbejde at lave det selv, hvis man ikke er vant
>til PHP, vil jeg næsten anbefale PHPMyAdmin, der i forvejen ka' finde
>ud af at ta' en blok af queries som input (og selv dele korrekt op).

ehm.. sagen er jo den, at jeg vil lave et komplet dump af databasen
vha. phpmyadmin og dette vil jeg lægge på serveren..

man kan så tulle rundt i mit cms og pille og rode, og inden man logger
af, kan man gendanne sitet ved at klikke på en knap..

når man gendanner sitet, skal mit dump altså eksekveres direkte i
php.. og det er dér jeg render ind i problemer..

Mvh
Bo Kamp Dudek
www.bodudek.dk

Kristian Thy (30-03-2004)
Kommentar
Fra : Kristian Thy


Dato : 30-03-04 20:31

Bo Kamp Dudek uttered:
> når man gendanner sitet, skal mit dump altså eksekveres direkte i
> php.. og det er dér jeg render ind i problemer..

Har du prøvet mysql_query( "SOURCE \"$fil\";" ); ?

\\kristian
--
Don't look back, something might be gaining on you.

Kristian Thy (30-03-2004)
Kommentar
Fra : Kristian Thy


Dato : 30-03-04 20:49

Kristian Thy uttered:
> Har du prøvet mysql_query( "SOURCE \"$fil\";" ); ?

Glem det, source-kommandoen virker tilsyneladende kun i
mysql-kommandolinien...

\\kristian
--
Min mor har altid sagt mig, at man bliver hvad man spiser
Så vil du være flad, så slug et par fliser

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408930
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste