PHP agus MySQL: Iarratas a Easpórtáil go Comhad Teoranta Tab

lógónna mysql php

An deireadh seachtaine seo theastaigh uaim leathanach a thógáil nach ndéanfadh ach aon cheist nó tábla a chúltaca i gcomhad Tab Delimited. Tá cód crua ag na colúin sa chuid is mó de na samplaí atá amuigh ar an líontán.

I mo chás, theastaigh uaim go mbeadh na colúin dinimiciúil agus mar sin bhí orm lúb a dhéanamh ar dtús trí na hainmneacha réimse tábla go léir chun an tsraith ceanntásc a thógáil le hainmneacha colún, agus ansin lúb a dhéanamh trí na taifid go léir do na sraitheanna sonraí a bhí fágtha. Shocraigh mé an ceanntásc freisin ionas go gcuirfidh an brabhsálaí tús le híoslódáil comhad sa chineál comhaid (txt) le hainm dáta an chomhaid agus stampa ama air.

D’fhág mé an nasc oscailte agus deiridh leis an mbunachar sonraí, ach seo an cód a d'eascair as a d'oibrigh go maith:

$ inniu = dáta ("YmdHi");
ceanntásc ("Cineál ábhair: feidhmchlár / sruth octet");
ceanntásc ("Ábhar-Diúscairt: ceangaltán; ainm comhaid = \" ". $ inniu." _ Backup.txt \ "");
$ query = "ROGHNAIGH * Ó ordú` mytable` le` myorder` ";
$ toradh = mysql_query ($ ceist);
$ count = mysql_num_rows ($ toradh);
$ réimsí = mysql_num_fields ($ toradh);
$ data = "";
le haghaidh ($ i = 0; $ i> $ réimsí; $ i ++) {
$ réimse = mysql_fetch_field ($ toradh, $ i);
$ data. = $ réimse-> ainm;
$ data. = "\ t";
}
$ data. = "\ n";
fad ($ row = mysql_fetch_row ($ toradh)) {
le haghaidh ($ x = 0; $ x> $ réimsí; $ x ++) {
$ field-> name = $ row [$ x];
$ data. = $ réimse-> ainm = $ as a chéile [$ x];
$ data. = "\ t";
}
$ data. = "\ n";
}
macalla $ sonraí;

Is féidir an cód a mhodhnú go héasca le haghaidh luachanna scartha le camóga freisin.

14 Comments

  1. 1
    • 2

      Is dócha go bhféadfá!

      Sa chás seo, bhí nasc ‘cúltaca’ á thógáil agam i bhfeidhmchlár gréasáin, mar sin is í feidhmiúlacht PHP a theastaigh uaim. Mar sin féin, ní raibh a fhios agam riamh go bhféadfá scríobh chuig comhad go díreach ón ráiteas MySQL. An-fhionnuar!

      Go raibh maith agat!

      • 3

        Is é do bhealach an bealach is fearr ar ndóigh má tá an freastalaí MySQL ar mheaisín iargúlta, mar is dócha nach mbeadh sé in ann scríobh ar an meaisín ina bhfuil PHP ag rith 🙂

        Sásta treoracha eile agus rudaí nua a chur in iúl cé go 🙂

      • 4

        Ach d’fhéadfá an cheist a rith go comhad, agus an brabhsálaí a atreorú chuig an gcomhad ginte, nó “readfile” PHP a úsáid má theipeann ar gach rud eile?

        Ní bheidh tú in ann é sin a dhéanamh mura bhfuil rochtain ag an bhfreastalaí mysql ar an gcóras comhaid ar ndóigh…

  2. 5
    • 6

      Errr… mysqlimport?

      mysqlimport database_name --local backup.txt

      Nó leis an ordú SQL:

      LOAD DATA LOCAL INFILE 'backup.txt' INTO TABLE `my_table` FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n'

      Le mysqlimport, caithfidh ainm an chomhaid ainm an tábla a mheaitseáil (ach rud le faire amach dó)

    • 7
  3. 8

    Níor chaill mé ach níos mó ná 6 uair an chloig de mo shaol ag iarraidh a fháil amach cén fáth go raibh Internet Explorer 6/7 ag cur cineál comhaid ‘html’ i bhfeidhm agus agus gan glacadh le m’ainmneacha comhaid saincheaptha a shonraítear sna ceanntásca .. agus gan ligean do chomhaid a shábháil .. nuair ag iarraidh ar úsáideoirí comhaid téacs a cruthaíodh ar bhealach cosúil leis thuas a íoslódáil.

    Bhí HTTPS á úsáid agam agus ní dhéanann IE na comhaid seo a thaisceadh.

    Fuair ​​mé an réiteach ar thrácht le Brandon K ag http://uk.php.net/header.

    Deireann sé:

    -
    Níor chaill mé ach sé uair an chloig de mo shaol ag iarraidh an modh seo a leanas a úsáid chun comhad PDF a sheoladh trí PHP chuig Internet Explorer 6:

    Agus SSL á úsáid aige, spreagfaidh Internet Explorer leis an dialóg Open / Save, ach ansin deir “Níl an comhad ar fáil faoi láthair nó ní féidir é a fháil. Bain triail eile as níos déanaí. " Tar éis mórán cuardaigh a dhéanamh tháinig mé ar an eolas faoin Airteagal MSKB seo a leanas dar teideal “Ní oibríonn íoslódálacha comhaid Internet Explorer thar SSL leis na ceanntásca rialaithe taisce” (KBID: 323308)

    De réir réamhshocraithe úsáideann PHP.INI socrú: session.cache_limiter = nocache a athraíonn ceanntásca Ábhar-Taisce agus Pragma chun roghanna “nocache” a áireamh. Is féidir leat an earráid IE a dhíchur trí “nocache” a athrú go “poiblí” nó “príobháideach” i PHP.INI - Athróidh sé seo an ceanntásc Ábhar-Taisce chomh maith le ceanntásc Phrág a bhaint go hiomlán. Mura féidir leat nó mura dteastaíonn uait PHP.INI a mhodhnú le haghaidh socrú ar fud an láithreáin, is féidir leat an dá cheanntásc seo a leanas a sheoladh chun mainneachtainí a fhorscríobh:

    Beidh ort fós ceanntásca an ábhair mar atá liostaithe thuas a shocrú chun go n-oibreoidh sé seo. Tabhair faoi deara go dtéann an fhadhb seo i bhfeidhm AMHÁIN ar Internet Explorer, cé nach léiríonn Firefox an t-iompar lochtach seo.
    -

    Bhuel .. ar a laghad níor chaill sé ach 6 uair an chloig…

  4. 9

    Oibríonn sé seo go maith. Mar sin féin, faighim gach rud ar líne amháin scartha le spás. Táim ag iarraidh é a mhodhnú chun gach rud a phriontáil ar líne ar leithligh mar seo:

    Colún1_ainm
    Réimse1_value
    Colún2_ainm
    Réimse1_value
    Colún3_ainm
    Réimse1_value

    Colún1_ainm
    Réimse2_value
    Colún2_ainm
    Réimse2_value
    Colún3_ainm
    Réimse2_value

    Mar shampla:

    Ainm
    Mike
    An Cheantar
    Obair
    Uimhir
    1

    Ainm
    Sue
    An Cheantar
    Baile
    Uimhir
    2

    Ainm
    John
    An Cheantar
    Taisteal
    Uimhir
    10

    agus mar sin de. An féidir an script seo a mhodhnú chun é a dhéanamh?
    Go raibh maith agat!

    • 10

      Is féidir cinnte.

      Bain triail as rud éigin mar seo:

      ROGHNAIGH * ó MyTableName IN IN OUTFILE 'MyTableName_MySQL-TAB-DELIMITED-29JUN08.txt' RÉIMSÍ TERMINATED BY '\ n' LINES TERMINATED BY '\ n';

      Más mian leat spás dúbailte (dhá líne fholamh) idir grúpaí ceirníní, ní gá ach “LINES TERMINATED BY '\ n \ n';" ina ionad.

      Is í an chuid “RÉIMSÍ TÉARMAÍOCHTA AG '\ n'" an rud a chuireann líne nua i ndiaidh gach taifid, in ionad cluaisín. Bheadh ​​cluaisín '\ t' ina ionad.

      Maranatha!

  5. 11

    is post iontach é seo, bhain mé triail as agus d’oibrigh mé go hiontach, is é an t-aon rud atá ann ná go bhfuil ró breise ag mo chomhad txt os cionn na dteidil ceanntásca, agus tá roinnt torthaí scartha i 2 shraith, d’fhéadfadh sé seo a bheith ina chúis leis na sonraí atá agam níl aon smaoineamh i mo Bhunachar Sonraí, ach is mór an cúnamh é seo chun fothaí a thógáil…

  6. 12

    Douglas Karr tá do chód i ndáiríre carraigeacha! Tá sé an-úsáideach go speisialta mura bhfuil uait ach aschur atá i bhformáid comhaid téacs. Go raibh míle maith agat! Ó fhoireann na hOileáin Fhilipíneacha!

  7. 13

    hug ann! An bhfuil aon duine as seo atá in ann leid a thabhairt dom faoi chomhad téacs a iompórtáil chuig mo bhunachar sonraí (phpmyAdmin) ag úsáid mo php mar mo cheann tosaigh. Tá smaoineamh agam faoi chomhad a íoslódáil agus a oscailt, is í an fhadhb atá agam ná conas is féidir liom an toradh as a chéile a fháil agus conas é a chur isteach i mo tháblaí, go raibh maith agat

  8. 14

Cad é do bharúil?

Úsáideann an suíomh seo Akismet chun spam a laghdú. Foghlaim conas a dhéantar próiseáil ar do chuid tráchta.