[]

Post ile Android den gelen değişken Sql sorgusunda nasıl kullanılır ? php

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  (02.11.19 20:29:18) 
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  (02.11.19 20:59:58 ~ 21:11:28) 
benim dediğim şeyi yapmamışsın ki


  • nahtoderfahrung  (02.11.19 21:22:34) 
@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  (02.11.19 21:26:10) 
Noktaları kaldırıp deneyebilir misin? Aşağıdaki gibi:

WHERE twitid ='$id'
  • mya  (02.11.19 23:42:20) 
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  (03.11.19 11:05:41) 
Şu şekilde deneyebilir misin?
tek tırnak + çift tırnak + nokta şeklinde

$statement = $conn->prepare(“SELECT name FROM tablethree WHERE twitid ='”.$id.”'”);
  • mya  (03.11.19 12:56:11) 
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  (03.11.19 13:10:59) 
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  (04.11.19 00:27:59) 
@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  (04.11.19 14:21:12) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.