Доброе утро.
Встала следующая задача.
Есть много изображений в галерее (более 1000), и всем нужно изменить значение поля alttext в базе по шаблону qw-000#
qw - название раздела, # - порядковый номер (1, 2, 3...)
И только например в галерее с galleryid = 3
То есть мне нужно каждую строку с определенным galleryid прогнать и поменять alttext на qw-000#
Не могу найти информации по циклам, как я понял тут не так все работает, подскажите пожалуйста, как это можно реализовать, хоть в какую сторону копать, руками будет не весело заполнять)
Мало ли кому пригодится, сделал возможно по дурацки, но до чего додумался)
Логика: запрашиваем filename картинки из галереи с определенным ид (единственное что там было уникальное), создаем из них массив. После перебираем все значения и меняем alttext на сгенерированный там где filename совпал
<?php
mysql_connect("localhost", "root", "") or die (mysql_error ());
mysql_select_db("dbname") or die(mysql_error());
function changeAltText($galleryId, $galleryName) {
$query = mysql_query("SELECT filename FROM pictures WHERE galleryid='$galleryId'");
$i=1;
$fileName = array();
while($row = mysql_fetch_array($query, MYSQLI_ASSOC)) {
$fileName[$i]=$row['filename'];
$i++;
}
$k = count($fileName)+1;
for ($i=1; $i<$k; $i++) {
$fileNameI = $fileName[$i];
$name = $galleryName.sprintf("%'.05d\n", $i);
mysql_query("UPDATE pictures SET alttext='$name' WHERE galleryid='$galleryId' AND filename='$fileNameI'");
echo $fileNameI."<br>";
echo $name."<br>";
}
}
changeAltText(1, 'ar-');
changeAltText(2, 'ak-');