Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. mauriello72
    3. Post
    M

    mauriello72

    @mauriello72

    • Profilo
    • Chi segue 0
    • Da chi è seguito 0
    • Discussioni 4
    • Post 24
    • Migliore 0
    • Gruppi 0
    Iscrizione Ultimo Accesso
    Età 17
    0
    Reputazione
    24
    Post
    0
    Visite al profilo
    0
    Da chi è seguito
    0
    Chi segue
    User

    Post creati da mauriello72

    • RE: Php e creazione tree di cartelle da mysql

      Credo di essere riuscito a risolvere,naturalmente se avete suggerimenti per migliorare li script sono ben accetti.Vi ringrazio perchè mi avetedato gli spunti per andare avanti.
      Ecco quindi come ho fatto:

      [php]<?php

      $host = 'xxxxxxx';
      $user = 'xxxxxx';
      $database = 'xxxxx';
      $pass = 'xxxxxx';
      $base = '/home/iltk/moodle/bash';
      $connection = mysql_connect($host, $user, $pass)
      or die("Connessione non riuscita: " . mysql_error());

      $db_selected = mysql_select_db($database, $connection);
      if (!$db_selected) {
      die ("Errore nella selezione del database: " . mysql_error());
      }

      $query = "SELECT * FROM files ";

      $file = mysql_query($query);

      while($dati=mysql_fetch_array($file) ) {

      $path=$dati['link'];
      
      
      $dirs = explode('/', $path);
      
      $count = count($dirs);
      

      //the string begin with a / , so start to the second

      if ($count > 1){ 
      

      for($i=0;$i<$count;$i++){

      //rebuild array using only the needed voices
      
      $def=array_slice($dirs,0,$i,true);
      
      
      $dir=implode("/",$def);
      
      
      $directory=$base.$dir;
      
        if(is_dir($directory)) {
          print "folder ".$directory."exist \n";
          }
          else if (mkdir($directory, 0777)) {
              print "folder ".$directory."created \n";
              }
      

      }
      }

      }

      ?>[/php]

      postato in Coding
      M
      mauriello72
    • RE: Php e creazione tree di cartelle da mysql

      Ciao e grazie del suggerimento. Purtroppo il problema per il momento è sulla estrazione e ricompilazione della variabile $path. Lavorandoci un pò su ho modificato lo script , che al momento è cosi:

      [php]<?php
      $db_selected = mysql_select_db($database, $connection);
      if (!$db_selected) {
      die ("Errore nella selezione del database: " . mysql_error());
      }

      $query = "SELECT * FROM files ";

      $file = mysql_query($query);

      while ( $dati = mysql_fetch_array($file) ) {

      $path=$dati['link'];

      //while ($path){
      //print $path;
      $dirs = explode('/', $path);
      $count = count($dirs);
      print $count."<p>";
      

      $count -= 1;
      // print $count."<p>";
      //$path = '.';
      for ($i = 1; $i < ($count); ++$i) {
      $dir .= '/'.$dirs*;
      print $dir."<p>";

          /*
           if(is_dir($dir)) {
          print "folder ".$dir."exist \n";
          }
          else if (mkdir($dir, 0777)) {
              print "folder ".$dir."created \n";
              }
      

      */
      }

      }

      ?>[/php]

      sottrarre una unità a $count mi serve per togliere il file all fne del record , mentre per il ciclo for $i=1 perchè mi veniva il risultato "//dir/dir/" essendo il record iniziante con "/".
      Così ottengo questo risultato:

      26
      /moodledata
      /moodledata/temp
      /moodledata/temp/typo3temp
      /moodledata/temp/typo3temp/cs
      4
      /moodledata/temp/typo3temp/cs/moodledata
      /moodledata/temp/typo3temp/cs/moodledata/upgradelogs
      4
      /moodledata/temp/typo3temp/cs/moodledata/upgradelogs/moodledata

      i problema , come si vede , è che il ciclo for continua anche dopo l'ultimo $i e quindi come si vede anche nell'ultima riga viene creata di nuova tutto il tree all'interno della sottodirectory creata precedentemente , anzichè partire dalla root.

      postato in Coding
      M
      mauriello72
    • RE: Php e creazione tree di cartelle da mysql

      Povero me...non avevo neanche pensato di fare un echo..... comunque facendolo è evidente che i path sono sbagliati:

      ./././home
      ./././home/iltk
      ./././home/iltk/moodle
      ./././home/iltk/moodle/bash
      ./././home/iltk/moodle/bash/moodledata
      ./.
      ././.
      ./././.
      ././././home
      ././././home/iltk
      ././././home/iltk/moodle
      ././././home/iltk/moodle/bash
      ././././home/iltk/moodle/bash/moodledata

      Se tolgo la dichiarazione della variable $path ( $path = '.'; ) ottengo:

      home/iltk/moodle/bash/moodledata/home
      home/iltk/moodle/bash/moodledata/home/iltk
      home/iltk/moodle/bash/moodledata/home/iltk/moodle
      home/iltk/moodle/bash/moodledata/home/iltk/moodle/bash
      home/iltk/moodle/bash/moodledata/home/iltk/moodle/bash/moodledata
      home/iltk/moodle/bash/moodledata/home/iltk/moodle/bash/moodledata/home
      home/iltk/moodle/bash/moodledata/home/iltk/moodle/bash/moodledata/home/iltk

      che già mi piace di più ma il ciclo non si chiude , tantè che ricomincia da /home (vedi ultime due righe dell'ultimo output)

      postato in Coding
      M
      mauriello72
    • RE: Php e creazione tree di cartelle da mysql

      Ho provato a correggere come dici , ma ottengo un errore di sintassi. In ogni caso anche mettendo else if , lo script mi da:

      exist././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/home/iltk/moodle/bash/moodledatafolder existfolder existfolder existfolder existfolder existfolder existfolder existfolder existfolder existfolder

      simile a prima

      postato in Coding
      M
      mauriello72
    • RE: Php e creazione tree di cartelle da mysql

      La cartella ha i permessi 777. Inoltre mi sono accorto di un piccolo errore nella chiusura delle graffe , ma anche dopo questa correzione ottengo , se lo eseguo da riga di comando , una serie di:

      Warning: mkdir(): File exists in /home/iltk/public_html/mkdir.php on line 40
      folder createdfolder exist
      Warning: mkdir(): File exists in /home/iltk/public_html/mkdir.php on line 40
      folder createdfolder exist
      Warning: mkdir(): File exists in /home/iltk/public_html/mkdir.php on line 40
      folder createdfolder exist
      Warning: mkdir(): File exists in /home/iltk/public_html/mkdir.php on line 40
      folder created./././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././././/home/iltk/moodle/bash/moodledatafolder exist
      Warning: mkdir(): File exists in /home/iltk/public_html/mkdir.php on line 40
      folder createdfolder exist

      la riga 40 si riferisce alla parte:

      if (!mkdir($path, 0777)) {
      print 'folder created';

      postato in Coding
      M
      mauriello72
    • Php e creazione tree di cartelle da mysql

      Ciao a tutti

      ho una tabella mysql con un nome file con il suo path per ogni record. Vorrei che php mi creasse le cartelle cosi come sono nel record. Per esempio se il record è

      /cartella1/cartella2/file

      non avendo ancora la cartella1 nè la cartella2 , php dovrebbe creare cartella1 e poi cartella2 , va bene anche senza creare il file.
      Ho provato cosi ma non mi funziona:
      [php]
      $db_selected = mysql_select_db($database, $connection);
      if (!$db_selected) {
      die ("Errore nella selezione del database: " . mysql_error());
      }

      $query = "SELECT * FROM files ";

      $file = mysql_query($query);

      while ( $dati = mysql_fetch_array($file) ) {

      $path=$base.$dati['link'];

      while ($path){
      print $path;
      $dirs = explode('/', $path);
      $count = count($dirs);
      $path = '.';
      for ($i = 0; $i < $count; ++$i) {
          $path .= '/' . $dirs*;
          if (is_dir($path)) {
          print 'folder exist';
          }
          if (!mkdir($path, 0777)) {
              print 'folder created';
              
          }
      

      }
      [/php]

      Grazie dell'aiuto. :bigsmile:

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] Il server non legge php

      Ecco fatto , ho risolto il problema. Ho fatto un file nuovo prendendo solo il codice php , ed ha funzionato perfettamente. Successivamente ho aggiunto il resto dell'html e la pagina , pur funzionando php , mi è venuta con i famosi caratteri strani dovuti alla codifica dell'editor , che sono andato a controllare e ho visto essere impostata in ANSI. Ho cambiato in utf-8 e tutto funziona.
      Rimane un pò un mistero per me il perchè php non veniva letto per nulla ,ma credo comunque sia stato per via della codifica.
      Grazie comunque a tutti dello sforzo.

      Non trovo l'opzione per aggiungere il tag risolto , nel caso ce ne fosse bisogno......

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] Il server non legge php

      Non avevo pensato di fare questa prova. In effetti il problema rimane , ma essendo prima dei tag probabilmente è un problema di lettura del file.

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] Il server non legge php

      Scusa per la punteggiatura , hai ragione.

      Tutte le altre pagine funzionano correttamente e sono anche quelle in php. Il mio sospetto è che ci sia un tag html che fa bypassare i tag php , anche se non ho mai sentito nulla del genere. Questa è una pagina per le inserzioni di ebay , che mi è stata inviata in un file txt dalla persona che me la ha preparata. Quindi l'altro mio sospetto è che la codifica non sia corretta , ma non capisco come verificare queste possibilità.

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] Il server non legge php

      Scusa , non mi sono spiegato bene. Il codice php si legge nel sorgente html.

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] Il server non legge php

      Grazie , ho modificato il post precedente.

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] Il server non legge php

      .php
      Questo è il link:
      shinegioielli.it/ebay/inserzioni.php

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] Il server non legge php

      Si tratta di un sito in hosting su aruba , (windows purtroppo) e php funziona perfettamente con tutti gli altri script.

      postato in Coding
      M
      mauriello72
    • [Risolto] Il server non legge php

      Ciao a tutti. Ecco subito lo script che mi da problemi:

      [html]<!DOCTYPE html PUBLIC "-xxxxxDTD XHTML 1.0 Transitional//EN" "xxxxxxxxxx/TR/xhtml1/DTD/xhtml1-transitional.dtd">

      <html xmlns="xxxxxxxxxxx/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <title>Documento senza titolo</title>
      <style type="text/css">
      <!--
      body {
      background-image: url(xxxx/xxxxxxx/inserzioni/shine/bg.jpg);
      }
      .Stile1 {font-family: Geneva, Arial, Helvetica, sans-serif}
      .Stile13 {
      font-size: 12px;
      color: #FFFFFF;
      font-family: Geneva, Arial, Helvetica, sans-serif;
      }
      -->
      </style></head>

      <body>
      <?php
      include("connect.php");

      $query_products_details = "SELECT *
      FROM products_details
      WHERE CustomLabel = '101' ORDER BY position ASC ";

      $result_products_details = mysql_query($query_products_details);
      $list_warehouse = mysql_fetch_array($result_products_details);
      print $list_warehouse['photo'];
      ?>
      <div align="center">[/html]

      Etc etc etc

      Accedendo dal browser il server non legge i tag php ,quindi php non interpreta il codice e mi viene restituita una pagina html con il codice sorgente php. Ovvio che questo non mi permette di ottenere le variabili che mi servono da mysql.

      Sapreste dirmi come mai?

      Grazie

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] L'array form mi cambia il &quot;.&quot; in &quot;_&quot;

      Ecco fatto. se interessa a qualcuno , ho risolto cosi:

      foreach($POST as $photo=>$position) {
      $photo=explode('
      ',$photo);

      foreach($position as $position)  {
      $photo=$photo[0].'_'.$photo[1].'.'.$photo[2];
      $sql="INSERT INTO products_details (id,photo,position) VALUES ('','$photo','$position')";
      

      Ehmm... si è bruttino ma mi accontento :giggle:

      postato in Coding
      M
      mauriello72
    • RE: [Risolto] L'array form mi cambia il &quot;.&quot; in &quot;_&quot;

      Ciao e grazie della risposta. Uso il nome del file perchè è l'unico riferimento che ho per far scrivere sul database che la foto indicata deve avere l'attributo 1 , 2 , ecc.

      Comunque mi si è svelato il mistero e di ciò ti ringrazio , tanto più che mi sembra semplice a questo punto fare un explode('_',$photo) , ecc ecc.

      Grazie ancora

      postato in Coding
      M
      mauriello72
    • [Risolto] L'array form mi cambia il &quot;.&quot; in &quot;_&quot;

      Ciao a tutti. Questo è il form che viene generato in php ( metto solo la parte del'input che mi da il problema):

      print '<td><a href="'.$link.'" >
      <img src="'.$link.'" width="100" height="100"/> </a></td>
      <td>'.$imagesize[0].'<br>x<br>'.$imagesize[1].'</td>
      <td>Position<input type="text" name="'.$file.'[]" size="2"></td>';

      e questo lo script all'arrivo :

      foreach($_POST as $photo=>$position) {
      foreach($position as $position) {
      $sql="INSERT INTO products_details (id,photo,position) VALUES ('','$photo','$position')";

      Ebbene , tutto funziona bene se non per il fatto che nella variabile $file , che dovrebbe essere il nome di un file immagine ,quindi con estensione .jpg , viene cambiata l'estensione in jpg (notate il ""). questo avviene anche mettendo la variabile $link , che è lo stesso file con l'aggiunta della cartella radice.
      Sapreste aiutarmi a capire come mai?

      Grazie

      postato in Coding
      M
      mauriello72
    • RE: mail() funziona solo da riga di comando

      Grazie delle risposte.
      Non so come ,ma ora funziona. Mi dispiace non essere d'aiuto ad altri scrivendo la soluzione , ma dopo qualche giorno di "pausa di tentativi" , ho riprovato ed ha funzionato.
      Grazie comunque ancora di tutto.

      postato in Coding
      M
      mauriello72
    • RE: mail() funziona solo da riga di comando

      Grazie mille, me lo studio per bene e vedo di capirci qualcosa.

      postato in Coding
      M
      mauriello72
    • RE: mail() funziona solo da riga di comando

      Scusa , non ho capito come mai ma la risposta che avevo dato non è quella che avevo scritto o che mi sembrava di aver scritto.

      Comunque se eseguo lo script che mi indichi in php da web ottengo "error".

      postato in Coding
      M
      mauriello72