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

    find and replace in database

    Salve, premetto che non ho molta esperienza con mysql quindi perdonate se non mi esprimo correttamente.
    Ho una tabella con centinaia di dati inseriti in un database e ho un campo in cui ci puo' essere nulla, il nome di un file tipo xxxxxxxx.gif o jpg o altri formati oppure il nome di un file sempre immagine con il path davanti della serie personal/xxxxxxxx.gif o jpg.

    In questa tabella avrei la necessita' di inserire un percorso differente in questa maniera

    se il campo campo vuoto = non deve fare nulla
    il campo con xxxxxxxx.gif o jpg o quello che e' = deve diventare images/avatar/xxxxxxx.gif ecc
    il campo con personal/xxxxxxxx.gif = diventa images/avatar/personal/xxxxxxxx.gif

    in pratica se il campo e' vuoto non deve fare nulla, negli altri casi aggiungere images/avatar/ davanti a quello che c'e' nel campo.

    E' possibile fare un find and replace ? e se si puo', sapete darmi la query corretta data la struttura della tabella seguente considerando che il campo da andare a riempire e' user_avatar

    Grazie mille dell'aiuto! :-)

    Codice PHP:
    CREATE TABLE `vespa_phpbb_users` (
      `
    user_idmediumint(8NOT NULL default '0',
      `
    user_activetinyint(1) default '1',
      `
    usernamevarchar(25NOT NULL default '',
      `
    user_passwordvarchar(32NOT NULL default '',
      `
    user_session_timeint(11NOT NULL default '0',
      `
    user_session_pagesmallint(5NOT NULL default '0',
      `
    user_lastvisitint(11NOT NULL default '0',
      `
    user_regdateint(11NOT NULL default '0',
      `
    user_leveltinyint(4) default '0',
      `
    user_postsmediumint(8unsigned NOT NULL default '0',
      `
    user_timezonedecimal(5,2NOT NULL default '0.00',
      `
    user_styletinyint(4) default NULL,
      `
    user_langvarchar(255) default NULL,
      `
    user_dateformatvarchar(14NOT NULL default 'd M Y H:i',
      `
    user_new_privmsgsmallint(5unsigned NOT NULL default '0',
      `
    user_unread_privmsgsmallint(5unsigned NOT NULL default '0',
      `
    user_last_privmsgint(11NOT NULL default '0',
      `
    user_emailtimeint(11) default NULL,
      `
    user_viewemailtinyint(1) default NULL,
      `
    user_attachsigtinyint(1) default NULL,
      `
    user_allowhtmltinyint(1) default '1',
      `
    user_allowbbcodetinyint(1) default '1',
      `
    user_allowsmiletinyint(1) default '1',
      `
    user_allowavatartinyint(1NOT NULL default '1',
      `
    user_allow_pmtinyint(1NOT NULL default '1',
      `
    user_allow_viewonlinetinyint(1NOT NULL default '1',
      `
    user_notifytinyint(1NOT NULL default '1',
      `
    user_notify_pmtinyint(1NOT NULL default '1',
      `
    user_popup_pmtinyint(1NOT NULL default '0',
      `
    user_rankint(11) default '0',
      `
    user_avatarvarchar(100) default NULL,
      `
    user_avatar_typetinyint(4NOT NULL default '0',
      `
    user_emailvarchar(255) default NULL,
      `
    user_icqvarchar(15) default NULL,
      `
    user_websitevarchar(100) default NULL,
      `
    user_fromvarchar(100) default NULL,
      `
    user_sigtext,
      `
    user_sig_bbcode_uidvarchar(10) default NULL,
      `
    user_aimvarchar(255) default NULL,
      `
    user_yimvarchar(255) default NULL,
      `
    user_msnmvarchar(255) default NULL,
      `
    user_occvarchar(100) default NULL,
      `
    user_interestsvarchar(255) default NULL,
      `
    user_actkeyvarchar(32) default NULL,
      `
    user_newpasswdvarchar(32) default NULL,
      `
    user_birthdayint(8NOT NULL default '0',
      `
    user_phoogle_map_centervarchar(255NOT NULL default '',
      `
    user_phoogle_commenttext,
      `
    user_phoogle_icontinyint(3unsigned NOT NULL default '1',
      `
    user_phoogle_allowtinyint(1unsigned NOT NULL default '1',
      `
    user_phoogle_show_metinyint(1unsigned NOT NULL default '0',
      
    PRIMARY KEY  (`user_id`),
      
    KEY `user_session_time` (`user_session_time`)
    ENGINE=MyISAM DEFAULT CHARSET=latin1

  2. #2
    Utente di HTML.it L'avatar di kodode
    Registrato dal
    Sep 2002
    Messaggi
    1,896
    forse non è bellissimo però potresti fare un file con:

    Codice PHP:
    $sql=" SELECT * FROM `vespa_phpbb_users` ";

    $result mysql_query$sql) or die( mysql_error() . "
    $sql) ;

    while( 
    $valorimysql_fetch_array$rsINT ) ) {

             
    $user_avatar $valori['user_avatar'];

             if(isset(
    $user_avatar){
                   if(
    substr($user_avatarstrlen($user_avatar)-3strlen($user_avatar)) == "gif" || substr($user_avatarstrlen($user_avatar)-3strlen($user_avatar)) == "jpg" ){
                          
    $user_avatar "images/avatar/".$user_avatar ;
                   }
                   if(
    substr($user_avatar0) == "personal" ){
                          
    $user_avatar "images/avatar/".$user_avatar ;
                   }
             }
             
             
    $sqlUpdate "UPDATE `vespa_phpbb_users`SET user_avatar = ".$user_avatar." WHERE user_id = ".$valori['user_id'];

    mysql_query$sqlUpdate );


    provala

  3. #3
    Grazie,
    prima che provo pero', non dovremmo dire qual'e' il database su cui deve agire?

  4. #4
    Utente di HTML.it L'avatar di kodode
    Registrato dal
    Sep 2002
    Messaggi
    1,896
    certo devi prima fare la connessione al db

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