Pagina 2 di 2 PrimoPrimo 12
Visualizzazione risultati 31 fino 45 di 45

Discussione: Database con un file di testo

  1. #31
    Guest

    Predefinito

    Buonasera, volevo sapere se questo codice può essere pericoloso...

  2. #32
    Guest

    Predefinito

    Questo codice quale? Quello che abbiamo scritto nei post precedenti? Se si dipende da cosa intendi per pericoloso!

  3. #33
    Guest

    Predefinito

    Ciao, si, il codice è quello scritto nei post precedenti.
    Per "pericoloso" intendo che l'host dove carichi il codice possa toglierti lo spazio web...ho trovato questo in rete :accertatevi che il vostro gestore di spazio web non richieda specifiche protezioni di scrittura nella cartella che contiene i file di testo!!!
    Questo messaggio si riferiva al primo codice che ho scritto e modificato grazie a voi per le mie esigenze. Spero di essermi spiegato!
    Grazie

  4. #34
    Guest

    Predefinito

    Non ho capito ancora il problema... Cosa centra il gestore (in questo caso AV) con il codice (una chat)?

  5. #35
    Guest

    Predefinito

    Scusate, ma un database in un file di testo non rappresenta un potenziale problema? Se si arrivasse a trovarlo, si potrebbe facilmente accedervi! E la pesantezza sarebbe ancor più notevole, secondo me! Ad esempio, se il file si chiamasse database.txt e io lo trovassi nel tuo spazio, avrei accesso a tutti dati contenuti in esso!

  6. #36
    Guest

    Predefinito

    E se io il numero della data volessi vederlo centrato come dovrei fare?

  7. #37
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    @genuzzu: ci sono vari modi per nascondere i file!!!

  8. #38
    Data registrazione
    04-09-2009
    Messaggi
    183

    Predefinito

    Io uso solo database su file testuali (anche perchè son più facili da trasferire via FTP) e non mi è mai successo niente ^^
    Age Of Empires GIF Creator & Archive
    New! Blog informatico di scripting PHP avanzato
    Vuoi giocare online a Age of Empires The Conquerors? -> Usa Voobly !! (MSN Zone non lo supporta più dal 19 giugno 2006)
    Il mio clan di The Conquerors -> Rifugio dei Conquerors
    Il mio stato su Xfire Live Video -> Unreal Tournament 2004
    Facebook MMORPG

  9. #39
    Guest

    Predefinito

    curiosità: e con un file di testo/database di 1MB le connessioni sono veloci?

  10. #40
    Data registrazione
    04-09-2009
    Messaggi
    183

    Predefinito

    Citazione Originalmente inviato da genuzzu Visualizza messaggio
    curiosità: e con un file di testo/database di 1MB le connessioni sono veloci?
    credo dipenda dalle azioni che fai. Solitamente la lettura è molto più veloce della scrittura. poi non so xD
    Age Of Empires GIF Creator & Archive
    New! Blog informatico di scripting PHP avanzato
    Vuoi giocare online a Age of Empires The Conquerors? -> Usa Voobly !! (MSN Zone non lo supporta più dal 19 giugno 2006)
    Il mio clan di The Conquerors -> Rifugio dei Conquerors
    Il mio stato su Xfire Live Video -> Unreal Tournament 2004
    Facebook MMORPG

  11. #41
    Guest

    Predefinito

    Citazione Originalmente inviato da ageofempiresgif Visualizza messaggio
    credo dipenda dalle azioni che fai. Solitamente la lettura è molto più veloce della scrittura. poi non so xD
    Voglio dire... se ti trovi ad avere, come (spero) nel mio caso (spero) sarà 300 voci da 300 caratteri nel database di testo, avrai 300 * 300= 90000, cioè 90k circa... cosa devi fare al posto di "SELECT FROM TABELLA TESTO WHERE ID=279"?
    Io, che già fatico a gestire il mysql, non ci riuscirei.

  12. #42
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Io mi sono creato una classe che fa questo per me !
    Di sicuro non è semplice, io ho fatto giusto un prototipo

    Codice PHP:
    <?php
    error_reporting
    (E_ALL);

    class
    flat {
    private
    $file;
    public function
    __construct($file) {
    $this->file = file($file, FILE_TEXT | FILE_SKIP_EMPTY_LINES);
    }

    public function
    fetch($fields, $sep, $where = null) {
    if(!empty(
    $where)) {
    $where = explode("=", $where);
    $w_col = trim($where[0]);
    $w_val = trim($where[1]);
    }

    $fields = explode(",", $fields);
    $field = array();
    $i = 0;
    foreach(
    $this->file as $row) {
    $exp = explode($sep, $row);
    if((
    count($fields) - 1) > (count($exp) - 1)) {
    unset(
    $fields[(count($fields) - 1)]);
    }
    foreach(
    $fields as $value) {
    if(!empty(
    $where) && $w_col == $value && $w_val == $exp[$i]) {
    $field[$value][] = trim($exp[$i]);
    }
    $i++;
    if(
    $i > (count($exp) - 1)) { $i = 0; }
    }

    }
    return
    $field;
    }
    }

    $flat = new flat("my.txt");
    $r = $flat->fetch("id,titolo,testo", " | ", "id = 1");

    print_r($r);
    ?>
    P.S. non è semplice riuscire ad "emulare" tutte le funzioni di mysql :D!
    Ultima modifica di mycarlo : 13-10-2009 alle ore 20.11.20

  13. #43
    Guest

    Predefinito

    Citazione Originalmente inviato da mycarlo Visualizza messaggio
    Io mi sono creato una classe che fa questo per me !
    Di sicuro non è semplice, io ho fatto giusto un prototipo

    Codice PHP:
    <?php
    error_reporting
    (E_ALL);

    class
    flat {
    private
    $file;
    public function
    __construct($file) {
    $this->file = file($file, FILE_TEXT | FILE_SKIP_EMPTY_LINES);
    }

    public function
    fetch($fields, $sep, $where = null) {
    if(!empty(
    $where)) {
    $where = explode("=", $where);
    $w_col = trim($where[0]);
    $w_val = trim($where[1]);
    }

    $fields = explode(",", $fields);
    $field = array();
    $i = 0;
    foreach(
    $this->file as $row) {
    $exp = explode($sep, $row);
    if((
    count($fields) - 1) > (count($exp) - 1)) {
    unset(
    $fields[(count($fields) - 1)]);
    }
    foreach(
    $fields as $value) {
    if(!empty(
    $where) && $w_col == $value && $w_val == $exp[$i]) {
    $field[$value][] = trim($exp[$i]);
    }
    $i++;
    if(
    $i > (count($exp) - 1)) { $i = 0; }
    }

    }
    return
    $field;
    }
    }

    $flat = new flat("my.txt");
    $r = $flat->fetch("id,titolo,testo", " | ", "id = 1");

    print_r($r);
    ?>
    P.S. non è semplice riuscire ad "emulare" tutte le funzioni di mysql :D!
    Mi inizia ad interessare... faccio delle prove...
    Comunque, non credete sia meglio il mysql? Dico, devi fare una faticaccia per leggere il file di testo mentre con il mysql basterebbe un rigo... (anche se dopo che hai fatto la classe è la stessa cosa...) con conseguenti possibili errori senza avere a disposizione, ad esempio, mysql.error ?

  14. #44
    L'avatar di mycarlo
    mycarlo non è connesso Utente attivo
    Data registrazione
    06-10-2009
    Residenza
    $this->s50
    Messaggi
    467

    Predefinito

    Magari posso implementarlo nella classe!
    Siccome non è tra i miei progetti non gli dedico molto tempo.
    Sono contento che inizii ad interessarti :D!

    P.S. Non essendo molto bravo con le espressioni regolari, non riesco a creare qualcosa di simile a mysql :(
    Ora che ci penso ci sono alcuni script già molto potenti. Vedi qui:
    http://litecms.altervista.org/?Database_di_testo
    Ultima modifica di mycarlo : 13-10-2009 alle ore 20.44.50

  15. #45
    Guest

    Predefinito

    Citazione Originalmente inviato da ilfantaclub Visualizza messaggio
    E se io il numero della data volessi vederlo centrato come dovrei fare?

    Oltre a questa aggiungo un altra domanda:

    se io voglio fare la seguente cosa:

    ogni volta che un utente compila un determinato modulo questo viene salvato in un file di testo, e in un determinato file php viene creata come una sezione che se cliccata mi apre quella pagina! Come fare?
    Grazie in anticipo!


    Altra cosa:


    Codice PHP:
    <?php
    if(isset($_POST["data"])) {
    $fp = fopen("data.txt", "a");
    fwrite($fp, fwrite($fp, $_POST["element_1"] . " | " . $_POST["element_8"] . " | " . $_POST["element_2"] . " |
    "
    . $_POST["element_2_1"] . " | " . $_POST["element_2_2"] . " | " . $_POST["element_2_3"] . " |
    "
    . $_POST["element_3"] . " | " . $_POST["element_3_1"] . " | " . $_POST["element_3_2"] . " |
    "
    . $_POST["element_4"] . " | " . $_POST["element_5"] . " | " . $_POST["element_6"] . " |
    "
    . $_POST["element_7"]);
    fclose($fp);
    foreach(
    file("data.txt") as $f) {
    echo
    $f . "<br />";
    }
    }
    ?>
    Questo è il mio file.php

    e questo index.html:

    Codice HTML:
    <table>TEST 01
    <form action="file.php" method="post">
    <tr>
    <td>Titolo:</td><td><input type="text" name="element_1"></td>
    </tr>			
    			  <input id="element_1" name="element_1" class="element text medium" type="text" maxlength="255" value=""/>
    			</label>
    	    <div>
    	      <p>Luogo
    	        <select class="element select medium" id="element_8" name="element_8">
    	          <option value="" selected="selected"></option>
    	          <option value="1" >Italia</option>
    	          <option value="2" >Europa</option>
    	          <option value="3" >America del Nord</option>
    	          <option value="4" >America del Sud</option>
    	          <option value="5" >Australia</option>
    	          <option value="6" >Asia</option>
                </select>
    	      </p>
    	      <div></div>
    	    <label class="description" for="element_2">Data del Viaggio </label>
    	    <span>
    	      <input id="element_2_1" name="element_2_1" class="element text" size="2" maxlength="2" value="" type="text"> /
    		    <label for="element_2_1">GG</label>
            </span>
    	    <span>
    	      <input id="element_2_2" name="element_2_2" class="element text" size="2" maxlength="2" value="" type="text"> /
    		    <label for="element_2_2">MM</label>
            </span>
    	    <span>
    	      <input id="element_2_3" name="element_2_3" class="element text" size="4" maxlength="4" value="" type="text">
    	      <label for="element_2_3">AAAA</label>
            </span>		  
    	    	    <label class="description" for="element_3"><br />
    	      Costo </label>
    	    <span class="symbol"></span>
    	    <span>
    		  <input id="element_3_1" name="element_3_1" class="element text currency" size="10" value="" type="text" /> 		
    			<label for="element_3_1">Euro</label>
    	    </span>
    	    <span>
    		  <input id="element_3_2" name="element_3_2" class="element text" size="2" maxlength="2" value="" type="text" />
    		  <label for="element_3_2">Cent</label>
    	    </span>
    <br>
    	    <label class="description" for="element_4">Descrizione </label>
    	    <div>
    	      <textarea id="element_4" name="element_4" class="element textarea medium"></textarea> 
            </div>
    	    <label class="description" for="element_5">Immagini </label>
    	    <div>
    	      <input id="element_5" name="element_5" class="element file" type="file"/> 
            </div>
    	    <label class="description" for="element_6"> </label>
    	    <div>
    	      <input id="element_6" name="element_6" class="element file" type="file"/> 
            </div>
    	    <label class="description" for="element_7"> </label>
    	    <div>
    	      <input id="element_7" name="element_7" class="element file" type="file"/> 
            </div>
    	    <input type="hidden" name="form_id" value="118589" />
    			    
    	    <input id="saveForm" class="button_text" type="submit" name="submit" value="Invia" />
    	  </div>
    </form>
    Dove sbaglio?
    Ultima modifica di ilfantaclub : 13-10-2009 alle ore 22.15.44

Pagina 2 di 2 PrimoPrimo 12

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •