Merhaba lütfen yardım edin sorunu çözemiyorum. !!

Android den veri gönderiyorum webservisime,
sonra web servisime gelen veriler ile 2 tane işlem yapmak istiyorum.

1.İşlem gelen veriyi mysql veri tabanıma kaydetmek.

2. İşlem gelen veri ile veri çekmek ve json olarak almak.

birinci işlem de sorun yok veriler veri tabanıma kaydediliyor.

ikinci işlem de sorun var null oluyor.

github.com

Kodlarım yukarı veriyorum.

Sorun android tarafında değil çünkü veri geliyor ve veri tabanına kayıt oluyor.
Fakat ben



$ extra = $ _POST [ " txtkim " ];
$ id = $ _POST [ " id " ];

"$ id " bu değişkenimi kullanmak istediğimde boş görünüyor ve boş değil anlayamadım cevaplarsanız çok sevinirim 4 saat dir uğraşıyorum fakat düzeltemedim.

bu soruna benzer bir paylaşım buldum fakat cevap verilememiş.

www.sitepoint.com

 

16. satıra

var_dump($_POST["id"]);

yazınca ne geliyor, ayrıca değişkenler niye tırnak içinde

$_SESSION['extra'] = '$extra';

burda $extra değişkeninin değeri değil direk "$extra" olduğu gibi atanıyor değişkene

nahtoderfahrung

Merhaba @nahtoderfahrung cevabın için teşekkür ediyorum. Fakat önerilerini denememe rağmen sorun devam etmekte.
Başka bir çözüm yolu biliyormusun ?

var_dump kontrolünü önerin üzerine aşağıdaki gibi denedim fakat null oldu.

$results["employeess"] = var_dump($id);

Session da tırnak hatamı düzelttim cevap aşağıdaki gibi.

{"employeesextra":null}{"employees":[]}

Sorun devam ediyor.

Birde sorun sql sorgusunda değil bunu şöyle kanıtlayabiliyorum.

$statement = $conn->prepare("SELECT name FROM tablethree WHERE twitid ='.$id.'");

Yukarıdaki sorgumu aşağıdaki şekilde değiştirdiğimde json verisi alabiliyorum.

WHERE twitid ='523'

Her mantıklı insan sorunun gelen $id değişkeninin boş olduğundan kaynaklandığını söyler,
bende böyle düşündüm çünkü $id boş görünüyor
fakat boş olmadığını aşağıdaki işlem kanıtlıyor.

if($id != ""){


$sql = "INSERT INTO tablethree (name, twitid )
VALUES ('$extra', '$id')" ;
// use exec() because no results are returned
$conn->exec($sql);


}

yukarıdaki işlem çalışıyor ve veritabanına veri kayıt oluyor.
Buradan biz verinin webservise geldiğini ve webservisten veritabanına kayıtedildiğini anlıyoruz.

Fakat o zaman gelen $id verisini biz nednen kullanamıyoruz.
$_SESSION olarak kaydedilse bile çalışmıyor.
Çünkü boş görünüyor fakat boş değil.
Anlamak çok zor.

aristotelesin berberi

benim dediğim şeyi yapmamışsın ki

nahtoderfahrung

@nahtoderfahrung Tekrar merhaba;
var_dump($_POST["id"]);
yukarıdakini diyorsan aşağıdaki gibi yaptım fakat bu sefer veritabanına veri gitmedi.

$id = var_dump($_POST["id"]);

aristotelesin berberi

Noktaları kaldırıp deneyebilir misin? Aşağıdaki gibi:

WHERE twitid ='$id'

mya

Merhaba @mya cevabın için teşekkür ediyorum,
fakat önerini ben daha çnce denemiştim tekrar denedim sonuç değişmedi.
Başka çözüm önerisi sunmak istermisin ?

$statement = $conn->prepare("SELECT name FROM tablethree WHERE twitid ='$id'");


yukarıdaki gibi denedim fakat yine json çıktım aşağıdaki gibi boş görünüyor.

{"employeesextra":null}{"employees":[]}

employeesextra -> bu ifadeyi ben test için yapmıştım dikkate almayınız.

aristotelesin berberi

Şu şekilde deneyebilir misin?
tek tırnak + çift tırnak + nokta şeklinde

$statement = $conn->prepare(“SELECT name FROM tablethree WHERE twitid ='”.$id.”'”);

mya

merhaba @mya cevabın için teşekkür ediyorum, bunu zaten denemiştim fakat takrar denedim olmadı
$statement = $conn->prepare("SELECT name FROM tablethree WHERE twitid ='".$id."'");
başka önerin var mı ?

aristotelesin berberi

ekleme yapılır yapılmaz twitid'yi dbden almıyor olabilir mi? $statement = $conn->prepare den hemen önce echo id yaptığınızda ne sonuç geliyor?

tolstoyorospucocugudurdostoyevskiadamdir

@tolstoyorospucocugudurdostoyevskiadamdir Merhaba cevabın için teşekkür ediyorum.
Dediğinizi denedim sonuç boş geliyor.
POst ile gelen id yi session atıp yazdıramıyorum bile, fakat dediğim gibi id boş değil çünkü veri geliyor, gelen veriyi web servis, veritabanına post ediyor.

aristotelesin berberi
1

mobil görünümden çık