2015-03-24 2 views
-1
<?php 
include 'config.php'; 

$sql1="SELECT Project_id FROM assigned_project_tester where Tester_name IN (SELECT Username FROM user_master where Username='meet.patel')"; 
$result=$conn->query($sql1); 


while($row=$result->fetch_assoc()) 
{ echo $proid[]=$row['Project_id'];   //this is getting printed from table project_master table 
    echo '<br>'; 

} 
$i=''; 
for ($i=0; $i<sizeOf($proid); $i++) 
{ 
    echo 'here are agian project names'; 
    echo $proid[$i];       //this checkpoint to check array and for loop is working or not 
    echo '<br>'; 
    $sql2="select Test_creation,Test_execution from assigned_project_tester where Project_id =' " . $proid[$i] . "' "; 
    $result1=$conn->query($sql2); 
while($row1=$result1->fetch_assoc())  //I think it is not getting inside while loop 
    { echo 'inside if ';      //this is not getting printed ............. 
    echo $row1['Test_creation'];   //test_creation is boolean value and data type is tinyint in table assigned_project_tester 
    echo $row1['Test_execution'];   //test_execution is boolean value and data type is tiny integer in table assigned_project_master 
              //what i want to do is print yes if user has test_creation permission else no 
    }          //same for test_execution I knew that value stored in database is 1 and 0 but 
              //why it is not getting printed   
} 

Here two sql file code for two tables which I am using in my code is written 
-- phpMyAdmin SQL Dump 
-- version 3.3.9 
-- http://www.phpmyadmin.net 
-- 
-- Host: localhost 
-- Generation Time: Mar 24, 2015 at 06:07 AM 
-- Server version: 5.1.53 
-- PHP Version: 5.3.4 

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; 


/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */; 
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */; 
/*!40101 SET @[email protected]@COLLATION_CONNECTION */; 
/*!40101 SET NAMES utf8 */; 

-- 
-- Database: `tmtool` 
-- 

-- -------------------------------------------------------- 

-- 
-- Table structure for table `assigned_project_tester` 
-- 

CREATE TABLE IF NOT EXISTS `assigned_project_tester` (
    `Assigned_id` int(11) NOT NULL AUTO_INCREMENT, 
    `Project_manager` varchar(45) DEFAULT NULL, 
    `Project_id` varchar(45) DEFAULT NULL, 
    `Tester_name` varchar(45) DEFAULT NULL, 
    `Test_creation` tinyint(1) NOT NULL, 
    `Test_execution` tinyint(1) NOT NULL, 
    PRIMARY KEY (`Assigned_id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=61 ; 

-- 
-- Dumping data for table `assigned_project_tester` 
-- 

INSERT INTO `assigned_project_tester` (`Assigned_id`, `Project_manager`, `Project_id`, `Tester_name`, `Test_creation`, `Test_execution`) VALUES 
(45, 'Pritesh Usadadiya', 'PRJ005', 'meet.patel', 0, 0), 
(46, 'Pritesh Usadadiya', 'PRJ005', 'Pritesh', 1, 1), 
(47, 'Pritesh Usadadiya', 'PRJ005', 'trilok.patel', 1, 1), 
(49, 'Pritesh Usadadiya', 'PRJ009', 'Pritesh', 0, 1), 
(50, 'Pritesh Usadadiya', 'PRJ009', 'trilok.patel', 0, 1), 
(52, 'Pritesh Usadadiya', 'PRJ011', 'trilok.patel', 1, 0), 
(54, 'Pritesh Usadadiya', 'PRJ008', 'Pritesh', 1, 1), 
(55, 'Pritesh Usadadiya', 'PRJ008', 'trilok.patel', 1, 1), 
(56, 'Pritesh Usadadiya', 'PRJ10', 'meet.patel', 0, 1), 
(57, 'Pritesh Usadadiya', 'PRJ10', 'trilok.patel', 0, 1), 
(58, 'Pritesh Usadadiya', 'PRJ009', 'meet.patel', 1, 1), 
(59, 'Pritesh Usadadiya', 'PRJ011', 'meet.patel', 0, 1), 
(60, 'Pritesh Usadadiya', 'PRO10', 'meet.patel', 1, 1); 



-- phpMyAdmin SQL Dump 
-- version 3.3.9 
-- http://www.phpmyadmin.net 
-- 
-- Host: localhost 
-- Generation Time: Mar 24, 2015 at 06:08 AM 
-- Server version: 5.1.53 
-- PHP Version: 5.3.4 

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; 


/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */; 
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */; 
/*!40101 SET @[email protected]@COLLATION_CONNECTION */; 
/*!40101 SET NAMES utf8 */; 

-- 
-- Database: `tmtool` 
-- 

-- -------------------------------------------------------- 

-- 

Я хочу получить значение Test_creation и Test_execution из таблицы с именем assign_project_tester и напечатать yes, если значение равно 1, иначе напечатайте no.I сделал комментарии в коде, чтобы вы любезно проверяли его. Ну, я пытаюсь решить это, так как 29 часов. Все другие вещи, такие как project_id, печатаются, пока это не работает, пожалуйста, помогите мне. Заранее спасибоКак получить логические значения таблиц в php?

+0

попробуйте удалить пробельные в вашем где пункт в SQL2-запроса: "выберите Test_creation, Test_execution из assigned_project_tester где PROJECT_ID = '". $ proid [$ i]. "'" –

+0

Йог, который вы задали почти таким же вопросом вчера, я дал вам более чем достаточно ответа. – Daan

ответ

1

Я смущен некоторыми вашими запросами. Кажется, вам не нужны два отдельных запроса. Будет ли это работать?

SELECT Project_id, 
     Test_creation, 
     Test_execution 
FROM assigned_project_tester 
WHERE Tester_name = 'meet.patel' 

Это должно получить список всех проектов, которым присвоен «meet.patel», и их статус.

Затем вы можете просто просмотреть результаты с помощью инструкции while.

$result = $mysqli->query($query); 

while ($row = $result->fetch_assoc()) { 
    echo $row["Project_id"]; 
    echo $row["Test_creation"]; 
    echo $row["Test_execution "]; 
} 

$result->free(); 
+0

Фактически модуль Permission был обновлен в последнее время, так что запросы были разными. Спасибо большое @ Adam – yogi

Смежные вопросы