ugrás a tartalomhoz

Adatbázis kiíratása PHP-val, probléma!

ahetaton · 2013. Jún. 17. (H), 09.39
Sziasztok!

Van egy phpscriptem, amit ha meghívok manuálisan, vagy cron jobbal ütemezve, akkor az lenne a feladata, hogy lementi az adatbázisom arra az ftp-re ahol maga a script van.
Mivel beszeretném ütemezni, hogy naponta 2x mentsen, az lenne nekem az ideális ha mindig felülírja az előzőt.

Viszont nem felülírja, hanem megnyitja és beleírja mindig az újat a fájlba, így nő a végtelenségig és phpmyadminban vissza sem tudom importálni.

Íme a kódrészlet ami ezért felel:

function db_mentese(){
 $backup_file = 'product_database.sql';
 $fp = fopen($backup_file, 'a');
                  $alap = "# Products";
       fputs($fp, $alap);
//Itt felsrolsz annyi táblát amennyi kell. Vagy beolvastatod az összes táblád nevét.
 $pro = array("jos_vm_product");
 //Táblák kiíratása
 for($k=0; $k < count($pro); $k++){
 $tabla=$pro["$k"];
 $oszlopok='drop table if exists ' . $tabla . ';' . "\n" .
                                        "create table ".$tabla . " (\n";
Előre is köszönöm.
 
1

fopen

vrnagy · 2013. Jún. 17. (H), 14.39
Szia,

Nezd meg az fopen "mode" parameterenek a lehetseges ertekeit, es hogy melyik mit jelent. A count() hasznalata a for-ban nem ajanlott, hasznalj helyette foreach-et, esetleg elore szamold meg az elemeket.
2

fopen($backup_file, 'a')Az

inf · 2013. Jún. 18. (K), 06.46

fopen($backup_file, 'a')
Az 'a' jelentése append...

Egyébként mi értelme van az ilyesminek? Úgy értem azért a legtöbb szolgáltató ad valamilyen lehetőséget adatbázis mentésre, visszaállításra. Ha meg nem az ő hibájukból romlik el valami, akkor fél nap alatt úgysem veszed észre, és máris felülírtad...
3

Lehet értelme

Pepita · 2013. Jún. 21. (P), 15.46
Én szoktam erre egy admin-linket, ami mindjárt letöltés is. Így az üzemeltető szépen az otthoni gépén is őrizgeti az oldalt, már amennyire sűrűn hajlandó menteni. És ebben benne vannak a képek/egyéb tartalmak is, ha nem túl sok. Egyetlen zip letöltés, és a szerver azt csinál, amit akar... Persze a szoftver állandó részei meg megvannak nekem.