Промяна на част от запис в база данни

vinsbg

Registered
Здравейте,

имам записи в базата данни, които са много (около 2000), който са от рода на
Код:
http://mysite.com/image.jpg
Сега се налага да ъпдейтна всичките тези и да се семни само сайта. Имената на снимките си остават същите. Въпроса ми е мога ли с някаква заявка да реплейсна само http://myste.com/ ?
 
Това няма ли да ъпдейтне цялото поле? Аз искам от цялото 'http://site.com/img/image.jpg' да ъпдейтне само 'http://site.com/img/'

Иначе трябва да сменям на ръка към 2000 записа...
 
към горе споменатия код пробвай с един where да ъпдейтнеш само един ред от таблицата и задължително си направи back-up
 
Малко хамалско, но с повече контрол.
PHP:
$oldstr = "http://mysite.com/img/"; // towa koeto iskash da se zameni
$newStr = "http://myNEWsite/NEWimg/asd/"; // S KAKWO DA SE ZAMENI ?
$sql = mysql_query("SELECT * FROM `table` WHERE `COLONA?` LIKE '%".$oldstr."%'");
while($r = mysql_fetch_assoc($sql)){
    if(preg_match("/".$oldstr."/", $r['COLONA?'] )) // prowerka za vseki sluchai dali suvpada imeto
   {
        $new = str_replace($oldstr, $newStr, $r['COLONA?']);
       mysql_query("UPDATE `table` SET `COLONA?`='".$new."' "); 
       echo $r['COLONA?'] . " се замени със: ".$new." <br/>";
   }
}

Ако искаш само да видиш дали на пръв поглед ще стане ЗАКОМЕНТИРАЙ заявката(за да не се изпълнява), аз съм сложил от долу едно ехо, което ще покаже кое с какво ще замени. Като няма заявка - само "визуално" ще ти покаже кое с какво ще замени.

Не забравяй да си помениш заявката. Промени `table` с името на твоята таблица и COLONA? с името на твоята колона, където са записани урл-те :?:
 
SVTerziev каза:
Ще ти ъпдейтне само замяната, няма да ти промени цялото поле... :)
Всъщност сега я пробвах и наистина ъпдейтна само тази част, която трябва. Благодаря.

п.п.
joTunkiq, благодаря и на теб за предложението.
 

Back
Горе