İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

[yardım] aynı olan verileri bir kere çektirmek

adre_nalin

0
İyinet Üyesi
Katılım
11 Ekim 2006
Mesajlar
0
Reaction score
0
Merhabalar arkadaşlar

tablodaki veriler
elma
armut
kiraz
şeftali
elma
muz
portakal
vs.

ben bunları listelettiğimde
2 adet elma olduğu için 2 kere yazıyor.
Ben istiyorumki aynı veriden yine varsa bir kez yazsın.

yardımınızı bekliyorum.
tşk.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
select a,b from c group by d
d <- tekil veri çekeceğin alan. sum, max, min gibi şeyler yapıyorsan bu işe yarar. Yine de elmanın birinde başka bir veri, diğerinde başka bir alanda başka bir veri varsa ve hepsi lazımsa yaramaz.
 

Grafix

0
İyinet Üyesi
Katılım
16 Aralık 2006
Mesajlar
1,153
Reaction score
0
Konum
Bursa
veritabanına aynı verilerin eklenmesini istemiyorsanız aşağıdaki kod dizimlerini inceleyiniz,

PHP:
$formdangelen = $_POST["formdangelen"];

$sor = mysql_query("select alanadin from tabloadin where alanadin='$formdangelen'");


if(mysql_num_rows($sor)>0){

echo "aynı veri zaten eklenmiş";

}else{

$ekle = mysql_query("insert into tabloadin alanadin values ('$formdangelen')");

//ekleme işlemi olumluysa
if($ekle){

echo "Veri eklendi";

}else{

echo "Veri eklenemedi";

}

}

edit: pardon ben yanlış anlamışım,dediğiniz işlemi atay arkadaşımın söylediği DISTINCT özelliği ile yapabilirsiniz.
 

atay

0
İyinet Üyesi
Katılım
29 Ekim 2005
Mesajlar
3,592
Reaction score
37
Mysql'de DISTINCT özelliği ile kolayca halledebilirsiniz.

Örnek:

$sql= "SELECT DISTINCT(birkere-cekilecek-alanin-adi),alan2,alan3 FROM tablo"
 

pCoX

0
İyinet Üyesi
Katılım
23 Ekim 2007
Mesajlar
0
Reaction score
0
Konum
Burda :)
Bu kadar karışıklığa gerek yok...
örneğin bir forma selectbox oluşturduğunu varsayiyorum. Bu selectboxta yaş sorgusu olsun. Sorduğunuz yaş ise, 18, 19, 20, 21, 22 sayilari olsun.

Sizde bir sayfaya yanlızca 18 yasindakileri cekecekseniz. Aşağıdaki kodu uygulayınız...

Kod:
<?php 

$src = mysql_query("select * from table where yas='18'");
while($wr = mysql_fetch_array($src)) {

echo $wr['ad'];
echo $wr['soyad'];

}

?>

bu şekilde, sadece 18 yasindakilerin adini ve soyadini browserda görebileceksiniz.

Iyi Çalışmalar Dilerim.
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Arkadaşın demek istediği yaşı 18 olan Ahmet ve Mehmet varsa sadece birisinin gözükmesi.
 

pCoX

0
İyinet Üyesi
Katılım
23 Ekim 2007
Mesajlar
0
Reaction score
0
Konum
Burda :)
Arkadaşın demek istediği yaşı 18 olan Ahmet ve Mehmet varsa sadece birisinin gözükmesi.

o halde fetch array sorgusunun while() döngüsünden cikartman ve mysql'den ad degerini cekmen gerekir.. oda şu şekilde :

Kod:
<?php 

$src = mysql_query("select * from table where yas='18' and ad='ahmet'");
$wr = mysql_fetch_array($src);

echo $wr['ad'];
echo $wr['soyad'];

?>


Dipnot :Sadece ID'si en yüksek "ahmet" verisini alacaktır...
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
Adın ahmet olduğunu bilmiyoruz. Karışıklığa gerek yok dedin ama gördüğün gibi bu yolla karışacak biraz daha kurcalarsak :)
 

pCoX

0
İyinet Üyesi
Katılım
23 Ekim 2007
Mesajlar
0
Reaction score
0
Konum
Burda :)
Adın ahmet olduğunu bilmiyoruz. Karışıklığa gerek yok dedin ama gördüğün gibi bu yolla karışacak biraz daha kurcalarsak :)

Kod:
<?php 

$yas = $_POST['yas'];
$ad = $_POST['ad'];

$src = mysql_query("select * from table where yas='$yas' and ad='$ad'");
$wr = mysql_fetch_array($src);

echo $wr['ad'];
echo $wr['soyad'];

?>

o halde bir form araciligi ile bu sekilde halledebiliriz ;). Demokrasilerde çareler tükenmez degilmi Angelo ?
 

Angelo

0
İyinet Üyesi
Katılım
13 Aralık 2004
Mesajlar
9,603
Reaction score
111
Konum
AZ
neden illa biryerlerden buluyorsun ki değeri, formdan gelmiyor, hiçbiryerden gelmiyor, haberimiz yok öyle birşeyden.


id - keyword
1 - mp3
2 - mp3 player
3 - mp3
4 - arcade
5 - arcade games
6 - arcade

böyle bir yapıda birer kere mp3,mp3 player, arcade ve arcade games çekilsin istiyoruz, çok mu şey istiyoruz. Sonsuz tane de olabilir, bilemiyorsun.

PHP ile zorlayıp yapacağım diyorsan tek yolu, hepsini seçip while ile döndürüp, her döngüde değeri bir diziye atıp, bir sonraki adımlarda diziyi kontrol ettirmek olabilir mükerrer basımlar için, ki gerek yok. :)
 

adre_nalin

0
İyinet Üyesi
Katılım
11 Ekim 2006
Mesajlar
0
Reaction score
0
@pCoX arakadşımıza teşekkür ederim ama sanırım o ne yapmak istediğimi pek anlamamış.
Çözümü @atay arkadaşımızın dediği gibi DISTINCT olaı ile kolaylıkla hallettim.
Teşekürler

örnek kod:

"SELECT DISTINCT kelime FROM kelimeler"
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst