вопрос / вопрос о подстроке - PullRequest
1 голос
/ 13 июля 2011

Итак, у меня есть этот простой цикл PHP, который генерирует данные таблицы html с номерами кодов UPC (у меня всего 129) и изображения штрих-кодов UPC рядом с ними.

Изображения штрих-кодов и номера UPC вSQL отличается первым и последним символом.Так что если у меня в SQL 123456789, штрих-код jpg указан как 012345678.jpg.Поэтому мне нужно выполнить некоторую подстроку, где я добавляю нулевой символ в начале и удаляю последний.

Появляются все изображения, кроме самого последнего, и я не могу понять, почему это так.и почему подстрока тоже не выглядит правильной.

У меня есть подстрока, работающая так, чтобы удалить только последний символ:

$upcNum = $r[upcNumber];        
$imageName = substr($upcNum, 0, -2);

Я думал, что это должно быть -1, а не -2, чтобы просто удалить последний символ ... с помощью вышеуказанного метода substr, вот что я получаю ...

$ upcNum = "123456789" substr ($ upcNum, 0, -2);// 12345678

В любом случае, вот мой цикл for, надеюсь, вы поможете мне пролить свет на эту досадную проблему ... спасибо!

$spiceType[0] = "Chiles";
$spiceType[1] = "Teas";
$spiceType[2] = "Botanicals";
$spiceType[3] = "Spices";
$spiceType[4] = "Herbs";

$counter = 1;       
for($i=0; $i<count($spiceType); $i++){
    $result = mysql_query("SELECT * FROM `spices` WHERE `type`='$spiceType[$i]' ORDER BY ID")or die(mysql_error());
    $spiceCat = $spiceType[$i];
    echo '<tr>
            <td></td><td>'.$spiceCat.'</td>
          <tr>';


    while($r=mysql_fetch_array($result)){
        $pname = $r[productName];
        $qty = $r[qty];
        $price = $r[price];
        $upcNum = $r[upcNumber];
        $imageName = substr($upcNum, 0, -2);
        $imageName = "0".$imageName.".jpg";
        echo'
            <tr>
                <td width="10">'.$counter.'</td>
                <td width="200">'.$pname.'</td>
                <td width="20"><p align="right">'.$qty.'</p></td>
                <td width="50">'.$price.'</td>
                <td width="200"><p align="center">'.$upcNum.'</p></td>
                <td><img src="upcjpeg/'.$imageName.'" height="30%" width="41%"></td>
            <tr>';
        $counter++;

    }
}

1 Ответ

2 голосов
/ 13 июля 2011

Если вам нужно нарезать только один символ, тогда он должен быть -1. Проверьте еще раз эти строки.

Если не отображается только последнее изображение, оно либо отсутствует, либо имеет другое имя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...