Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Modifica automatica contenuto colonna SQL

    Ciao ragazzi, ho una colonna di una tabella che mi fa le bizze: in pratica in una colonna 'periodo' ho un testo composto da anno e mese in questo modo : 2015 06, oppure 2016 09 e cosi via.
    Il problema sorge quando, per qualche errore nel codice, a volte si creano dei record diversi, ad esempio 2015 6 o 2016 9.
    E' possibile fare un codice ad inizio pagina (non so nella home del mio sito, di modo che appena entro faccia il controllo) che mi fa il controllo e l'UPDATE delle voci errate?

    Le voci errate sono sempre sicuramente cosi composte : 2016 3 ecc, in pratica manca lo zero davanti al "mese".

    Ringrazio in anticipo per l'aiuto.

    Buona serata ragazzi

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,337
    Come componi il dato ? fai $periodo = $anno.' '.$mese; ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Ciao e grazie per la risposta! Si lo creo praticamente in questa maniera "barbara" perchè il programma me lo porto dietro da qualche anno ed ormai me lo devo tenere in questa maniera. Il controllo però lo volevo fare dopo, a danno già fatto, anche perchè alla variabile $mese ho messo un controllo "se = a 3 allora è = a 03" ma certe volte non lo prende, quindi volevo riparare la toppa a posteriori.
    Mi serviva tipo un explode della stringa o qualcosa di simile ma sono veramente arrugginito e non saprei dove mettere le mani.
    Grazie mille

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,337
    Sei comunque sulla strada giusta. Dovresti vedere perche il codice non funziona certe volte. Postalo.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Buongiorno,
    come principio è giusto solo che se stampo $tempo[1] mi restituisce come valore 1 che non è presente sicuramente nella colonna.

    Codice PHP:
    $db mysql_connect("localhost","root","");if (!$db)  {  die('Could not connect: ' mysql_error());  }
    mysql_select_db("prova"$db);
    $query=mysql_query("SELECT * FROM fatture ORDER BY periodo ") ; while($row=mysql_fetch_array($query)){    $periodo=$row["periodo"];    echo $periodo;    $tempo explode(" "$periodo);if ($tempo[1] = || $tempo[1] = || $tempo[1] = ){    $tempo[1] = '0'.$tempo[1];            }    } 
    Poi metterei un UPDATE sulle fatture da modificare.

    Grazie mille!!

  6. #6
    Ho risolto modificando il codice sopra postato... grazie comunque per l'aiuto!!

    Codice PHP:
    $tempo explode(" "$periodo);echo $tempo[1].'<br>';if ($tempo[1] == '3' ){    $tempo[1] = '03';    $periodo $tempo[0].' '.$tempo[1];    echo $periodo.'CAMBIATO!!<br>';    mysql_query("UPDATE fatture SET periodo = '$periodo'  WHERE id_fattura = ".$id."") ;      if (mysql_error()) { echo mysql_error() ; }        } 

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 © 2020 vBulletin Solutions, Inc. All rights reserved.