• 03-09-2013, 01:57:14
    #1
    Reveloper
    Merhaba Arkadaşlar kodum şöyle:

    function cart() {
    		echo '
    				<thead>
    					<tr>
    						<th>Ürün</th>
    						<th>Fiyat</th>
    						<th>Adet</th>
    						<th>Toplam</th>
    						<th>Sepetten Çıkar</th>
    					</tr>
    				</thead>
    				
    				<tbody>
    		';
    	foreach($_SESSION as $name => $value){
    		if($value>0){
    			if(substr($name, 0, 5)=='cart_'){
    
    				$id =substr($name, 5, (strlen($name)-5));
    				$get=mysql_query('SELECT id,product_name,product_description,product_price,product_images FROM products WHERE id='.mysql_real_escape_string((int)$id));
    
    				while ($get_row=mysql_fetch_assoc($get)){
    					$sub=$get_row['product_price']*$value;
    					echo '
    					<tr class="even">
    						<td>'.$get_row['product_name'].'</td>
    						<td>'.number_format($get_row['product_price'], 2).' TL</td>
    						<td>'.$value.' Adet - <a href="cart.php?add='.$id.'" title="Ekle">+</a> / <a href="cart.php?remove='.$id.'" title="Çıkar">-</a></td>
    						<td>'.number_format($sub, 2).' TL</td>
    						<td><a href="cart.php?delete='.$id.'">X</a></td>
    					</tr>
    			<input type="hidden" name="urun[siparis][]" value="'.$id.'" />
    			<input type="hidden" name="urun[adet][]" value="'.$value.'" />';
    
    					}
    			}
    			
    		}
    		$total += $sub;
    	}
    		echo '</tbody>';
    	if($total==0){
    	echo "<tr><td>Sepetiniz Boş</td></tr>";
    	}else{
    	echo 'Toplam: '.number_format($total, 2);
    	}
    	
    }

    Benim echo 'Toplam: '.number_format($total, 2); bu kodu function dışında kullanmam lazım ama oradan çıkartınca 0.00 TL olarak gözüküyor nasıl yapabilirim bunu?
  • 03-09-2013, 01:59:27
    #2
    function içinde

    global $total;
    yazmalısın.
  • 03-09-2013, 02:50:27
    #3
    Reveloper
    soulmy adlı üyeden alıntı: mesajı görüntüle
    function içinde

    global $total;
    yazmalısın.
    onuda denedim etki etmedi
    	if($total==0){
    	echo "<tr><td>Sepetiniz Boş</td></tr>";
    	}else{
    	echo 'Toplam: '.number_format($total, 2);
    	}
    	global $total;
  • 03-09-2013, 03:36:55
    #4
    Kimlik doğrulama veya yönetimden onay bekliyor.
    $total değerini dışarda tutup fonksiyonda globalleştirip öyle eşleme yapabilirsin.
  • 03-09-2013, 03:41:46
    #5
    Reveloper
    saintx adlı üyeden alıntı: mesajı görüntüle
    $total değerini dışarda tutup fonksiyonda globalleştirip öyle eşleme yapabilirsin.
    nası yani hocam sorumu mazur görün anlayamadım
  • 03-09-2013, 03:52:05
    #6
    global değeri fonksiyon sonunda değil başında atayın.

    function test(){
    $a = "test";
    global $a;
    }

    şeklinde değilde;

    function test(){
    global $a;
    $a = "test";
    }

    şeklinde deneyin. Sorun büyük ihtimal ortadan kalkıcak