2013-04-21 3 views
0

제품 mysql 테이블이 있습니다. products_image 열에 잘못된 데이터가 있습니다. 앞으로 PHP를 사용하고 str_replace를 수행 할 수 있지만 내 문제는 현재 데이터입니다.Mysql 테이블의 데이터를 Sanitize

제품 이미지의 URL 또는 경로 인 products_image를 업데이트하고 싶습니다. /.가 있어야하는 경로에 ./이 있습니다.

mysql (php가 아님)의 저장 프로 시저를 사용하여 업데이트 문을 실행하는 방법이 있습니까? 아니면 아래에서 수행 한 것처럼 PHP를 사용하지만 제대로 작동하지 않습니다. 내가 PHP에서 시도했을 때 (아래 참조) 대부분의 시간 동안 작동했지만 타임 아웃했다. (12779 rows) 당신이 도울 수 있기를 바랍니다. 감사. KP

<pre> $sql ="Select products_image from products"; 
     $result = mysql_query($sql,$link); 
     while ($row = mysql_fetch_assoc($result)) { 

     $products_image = $row['products_image']; 
     $image = str_replace("./","/", $products_image); 

     $sql1="UPDATE products set products_image='$image'"; 
     $result1 = mysql_query($sql1,$link); 
      } 
</pre> 
+0

"잘못된 데이터는"무엇에

변화

$sql1="UPDATE products set products_image='$image'"; 

? – zerkms

답변

2

REPLACE 기능을 사용하십시오. 코드에

UPDATE products SET products_image = REPLACE(products_image, "./", "/") 
0

최소한의 변화는 다음과 같습니다

$sql1="UPDATE products set products_image='$image' WHERE products_image = $row['products_image']"; 
+1

코드에 대한 설명을 제공해 주시겠습니까? – Jesse

+0

OP 코드를 기반으로합니다. 이전의'SELECT' 문에 기반하여'product_image'를 갱신합니다. – Amir

+0

이 답변은 질문에 도움이되지 않습니다. 앞으로 조금 더 대답을 설명하는 것이 가장 좋습니다. –

관련 문제