Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Leggere file .ini

  1. #1

    Leggere file .ini

    Salve a tutti,
    avrei la necessità di creare un array da un file ini, come su php, però mi serve che questo array sia su javascript. Come posso fare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    Il tuo file javascript.php
    codice:
    <?php
        header ("Content-type: text/javascript");  // così il browser lo interpreta come un .js
        $array = file ("xxx.ini");// creo l'array dal file con php
    ?>
    // codice javascript
    var array = [<?php echo implode ($array, ", "); ?>];
    // codice javascript
    No

  3. #3
    in questo modo l'array viene creato su php e poi lo trasporta in javascript, giusto?

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    si

    Magari puoi mettere questo file separato dal resto del codice javascript così da non mescolarlo troppo con php...
    No

  5. #5
    Non funziona D:
    codice HTML:
    <script type="text/javascript" src="js/opere.php">
    Codice PHP:
    <?php
            header 
    ("Content-type: text/javascript");  // così il browser lo interpreta come un .js
            
    $opere parse_ini_file("admin/txt/opere.ini",true);// creo l'array dal file con php
        
    ?>
    var opere = [<?php echo implode ($opere""); ?>];
    document.write(opere);
    codice:
    [1]
    1=acqua, 1974 tecnica mista cm 50x50
    2=cielo, 2010 olio su carta cm 65x34
    [2]
    1=prova, 2919 tecnica cm XXxXX
    2=ciap, 3042 tecnica cm XXxXX
    il problema è che il mio array è multidimensionale. Come faccio in questo caso a protarlo in javscript?

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2014
    residenza
    Voltati
    Messaggi
    913
    Sostituisci
    codice:
     var opere = [<?php bla bla bla...
    con
    Codice PHP:
     var opere = <?php echo json_encode($opere); ?>
    No

  7. #7
    alla fine ho risolto così:
    Codice PHP:
    <?php
    header
    ("content-type: application/x-javascript");
    $opere parse_ini_file("../admin/txt/opere.ini",true);// creo l'array dal file con php 
    echo "var opere = new Array();\n";
    foreach(
    $opere as $i => $boh){
        echo
    "\topere[".$i."] = new Array();\n";
        foreach(
    $opere[$i] as $b => $okay){
            if(
    $opere[$i][$b] == "")
                echo 
    "";
            else echo 
    "\t\topere[".$i."][".$b."] = \"".$opere[$i][$b]."\";\n";
         }
    }
    $stampa file_get_contents("opere.js",FILE_APPEND);
    echo 
    $stampa;
    ?>
    codice HTML:
    <script type="text/javascript" src="js/opere.php"></script>
    Ora il mio problema sta nel modificarlo, infatti risco ad inserirlo in un array, che modifico tramite i valori di un form, ma al momento di scriverlo sostituisce il valore con il primo valore del primo array, ovvero:
    Codice PHP:
    <?php
    $anno 
    $_COOKIE["anno"];
    $opera $_COOKIE["opera"];
    $descrizione $_POST["descrizione"];
    $file parse_ini_file("../txt/opere.ini",true);
        
    $file[$anno][$opera] = $descrizione;
        
    foreach(
    $file as $i => $ciao){
            
    $conta count($file[$i]);
            
    $stringa .= "[".$i."]\n";
            
            foreach(
    $file[$i] as $b => $ciao){
                
    $stringa .= $b."=".$file[$i][$b]."\n";
                if(
    $i == $conta) echo "\n\n";
            }
        }
        
    file_put_contents("../txt/prova.ini",$stringa);
    ?>
    in questo modo, qualunque sia il valore di $opera, lo script modifica il primo $opera dell' $anno selezionato, non so se mi spiego...

  8. #8
    Mi correggo: non avevo setta il cookie nella pagina del form
    Cose che capitano, comunque grazie a tutti! Ho risolto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.