2016-03-26 23 views
0

için tablo adı oluşturmak için dizine oturum değişkenini dizine ekleyin ama bunun için gerçekten iyi bir isim düşünemiyorum. Benim problemim bir web sitesine sahipti, bir düğmeye tıkladığınızda veritabanına gönderdikten sonra oradaki tüm sayıları topladı. Bu kısmı yaptım ama. lütfen bununla ilgili soru sormayın, ancak bunu yapması gereken kişi, özellikle onun sayısı için bir tablo oluşturmalıdır. benim sorunum bir oturum daha önce kişi yerde kimliği o 88. olduğunu söylüyorlar yapılır olduğuna dair önemli değil ben bu tabloyu bulun ve tüm numaralarıMySQL sorgu

session_start(); 
$id=$_SESSION['id']; 

    include('db.php'); 


    $add=mysql_query('SELECT SUM(p1),SUM(p2) from `game88`'); 
    while($row1=mysql_fetch_array($add)) 
    { 
    $mark=$row1['SUM(p1)']; 
    $mark1=$row1['SUM(p2)']; 
    } 
?> 

eklemek için şu anda bu var ama vardı o ben bu

'SELECT SUM(p1),SUM(p2) from `game" . $id . "`' 

denedi ama çalışmıyor bu yüzden kullanıcıların oturumuna göre tablo bulmalıyız

('SELECT SUM(p1),SUM(p2) from `game88`') 

gelen ve game88 diyor. Oyun her zaman tablo adının ilk bitidir ve 88 daha önce oluşturulmuş olan kullanıcı yerdir. Bu masa game88 bulmak için gereken veya kullanıcı oturumu ne olursa olsun 99 masa game99 olurdu. Umarım bu anlaşılabilir bir şeydir. ve bunun ne olduğunu sormayın çünkü açıklamak zor. Yardımınız için teşekkürler.

+0

Bu gerçekten bir [XY Problem] (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem) gibi gözüküyor. . lütfen bununla ilgili soru sormayın ama .... * çünkü sezgisel olarak bu mantığın gerçekten – DelightedD0D

+0

adresinde sormanız gereken sorun olduğunu biliyorsunuz, sorun "oyundan" gelen puanlarla gelmiyor. id. ''fakat wen denir, bu da kodun işe yaramadığı anlamına gelir ve yardıma ihtiyacım var @ DelightedD0D –

+0

Ama neden her oyun için yeni bir' masa 'yaratıyorsunuz? '' '' '' '' Adlı bir 'masa' 'olması ve her kullanıcı oyununun' 88' veya '89' değerini saklayacağınız' gameId' adlı bir sütun ile 'row' olarak depolanması daha uygun olacaktır. vb ..... sonra sadece mevcut gameId – DelightedD0D

cevap

0

Sorununuz yeterince açıklanmadı, ama ne istesem: Kayıtlı bir kullanıcı aşağıdaki gibi bir tabloya danışır: TableName $ userID puanlarını almak için, değil mi?

Bu nedenle, önce oturumun, oturum açmış kullanıcının gerçek kimliğine sahip olduğundan emin olmanız, ardından eğer varsa, eğer varsa, php komut dosyasına başvurmanız gerekir. Sonra böyle seçme sorgusu yapmak:

$tableName = game.'$id'; $query = 'Select sum(p1), sum(p2) FROM $tableName'; Umut yardım Eğer

+0

'puanının içeriğini karşılaştırarak veya ekleyerek (veya onunla ne yaparsanız yapın) yineleyin. oturumda id için veri var. Benim sorunum masa game00 açmak için ihtiyacım var. 00 oturum numarası. Daha sonra onu eklemek gerekiyor. Bu zaten yaptım. –

+0

Ben sadece bir tablo ile noktaları oluşturmak ve ID'yi göndererek veriyi seçmeniz gerektiğini düşünün Nerede ... –

+0

Tam olarak :) @jack, ne Jose dedi bu oyunlar satırlar olmalı, değil tabloları – DelightedD0D

1

bu

$add=mysql_query('SELECT SUM(p1),SUM(p2) FROM '.$tableName.''); 

gibi benim koduna ekleyerek daha sonra

$tableName = game.'$id'; 

eklenmesi ve tarafından i Bu sonuçları getirmek başardı çünkü ben

kullandım
'.$tableName.' 
+0

Jack, yayınlama sırasında pasaj özelliği tarayıcıda çalıştırılabilen kod eklemek için 'html', 'css' ve 'javascript'. Bunun gibi sunucu kodları için, kodu vurgulayın ve http://i.imgur.com/ScIegTX.png adresinde gösterilen köşeli parantez butonunu tıklayın ya da tek bir satır varsa kodun önüne 4 boşluk koyun. – DelightedD0D