comma tussen 2 echo's weg laten

Status
Niet open voor verdere reacties.

stevedk

Gebruiker
Lid geworden
13 jun 2013
Berichten
6
Hallo

Heb een stukje code voor het weergeven van een agenda per datum en heb deze opgemaakt zodat de info
wat uit de database wordt opgehaald wordt weergeven met een comma tussen (Vanaf regel 54).
Nu wil ik graag dat wanneer er een veld of meerdere velden leeg zijn in de database deze comma niet meer wordt
weergegeven.
Ik heb onderaan een foto toegevoegd van hoe het er nu uit ziet.

Is er iemand die me hiermee kan helpen?




PHP:
<form method="get" action="">

    <div id="operation_date_title">
    Select operation date
    </div><!-- #operation_date_title -->

    <div class="input-append date">
    <input type="text" id="operationdate" name="operationdate" placeholder="Operation date" data-date-format="yyyy-mm-dd" value="<?php echo (isset($_GET['operationdate']) &&    !empty($_GET['operationdate']))? $_GET['operationdate'] : date('Y-m-d', time()) ;?>"  required /><span class="add-on"><i class="icon-calendar"></i></span>
    </div><!-- .input-append date -->

	<input name="submit" type="submit" class="btn btn-medium" value="filter" />

  </form>
    
    
<table class="table table-striped">
<?php

$query = "SELECT * FROM shipments WHERE operationdate = '" . date('Y-m-d', time()) . "'";
if(isset($_GET['operationdate']) && !empty($_GET['operationdate'])) 
{
	$query = "SELECT * FROM shipments WHERE operationdate = '" . $_GET['operationdate'] . "'";
}
$status = 0;
$result = mysql_query($query); 
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
	echo '<tr class="mainrow">';
		switch($status){ // replace with -> $line['status']
			case 0:
				echo '<td><i class="icon-edit"></i>&nbsp;&nbsp;<span class="label">Open</span></td>';
			break;
			case 1:
				echo '<td><span class="label label-info">Extended</span></td>';
			break;
			case 2:
				echo '<td><span class="label label-important">Canceled</span></td>';
			break;
			case 3:
				echo '<td><span class="label label-success">Success</span></td>';
			break;
		}

		echo '<td>';
		echo $line['order_number'];
		echo "</td><td>";
		echo $line['customername'];
		echo "</td><td>";
		echo $line['doctor'];		
		echo "</td>";
	echo "</tr>"; 
	echo "<tr class='subrow' style='display:none;'>"; 
		echo "<td colspan='3'>";
			echo "<strong>Materials</strong>";
/* Vanaf hier dus */
			echo ": ";
			echo $line['material1'];
			echo ": ";
			echo $line['material2'];
			echo ": ";
			echo $line['material3'];
			echo ": ";
			echo $line['material4'];
			echo ": ";
			echo $line['material5'];
			echo ": ";
			echo $line['material6'];
			echo ": ";
			echo $line['material7'];
			echo ": ";
			echo $line['material8'];
			echo ": ";
			echo $line['material9'];
			echo ": ";
			echo $line['material10'];
			echo ": ";
			echo $line['material11'];
			echo ": ";
			echo $line['material12'];
			echo ": ";
			echo $line['material13'];
			echo ", ";
			echo $line['material14'];
		echo "</td>"; 
	echo "</tr>"; 
} 
?>
</table>

	<div id="icon_info">
    <table>
    <tr>
    <td><span class="label">Open</span></td>
    <td width="5px"></td>
    <td> Open shipment / unsent</td>
    </tr>
	<tr>
    <td><span class="label label-info">Extended</span></td>
    <td width="5px"></td>
    <td> Extended shipment</td>
    </tr>
    <tr>
    <td><span class="label label-important">Canceled</span></td>
    <td width="5px"></td>
    <td> Canceled shipment</td>
    </tr>
    <tr>
    <td><span class="label label-success">Success</span></td>
    <td width="5px"></td>
    <td> Shipment successfully completed</td>
    </tr>
    </table>
    </div><!-- #icon_info -->
</div><!-- .calendar_container -->



ScreenHunter_02 Jun. 17 10.26.gif
 
Laatst bewerkt door een moderator:
Een erg handig database-ontwerp is het niet. Het mooiste zou zijn dat je een array terugkreeg met materialen want dan kon je gewoon implode() gebruiken en is het aantal oneindig in plaats van 14.

Dat terzijde: Ik ga uit van een altijd ingevulde materiaal 1

PHP:
echo '<strong>Materials</strong>: '. $line['material1'];

// Check of de waarde van material2 niet exact gelijk is aan een lege string
if('' !== $line['material2']) {
    echo ', '. $line['material2'];
}
// Check of de waarde van material3 niet exact gelijk is aan een lege string
if('' !== $line['material3']) {
    echo ', '. $line['material3'];
}

// etc
 
Laatst bewerkt:
Bedankt Tha Devil. Zeer handig.
 
Laatst bewerkt door een moderator:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan