本文整理汇总了PHP中database::get_row_num方法的典型用法代码示例。如果您正苦于以下问题:PHP database::get_row_num方法的具体用法?PHP database::get_row_num怎么用?PHP database::get_row_num使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类database
的用法示例。
在下文中一共展示了database::get_row_num方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: index
public function index()
{
// ______________________________
// | School Year | Level | Action |
// |---------------------|--------|
// | | | [add] |
// |------------------------------|
// | 2015/2016 | | details|
// ------------------------------
//
/* CONFIGURES DROP DOWN Menus (2 in this case: programs and genre) */
$connection = new database();
$table = new simple_table_ops();
$content = "<div class='third_left'><p>Here are the class hours. If you change when a class starts/ends, change it here, but<p>DO NOT change the ORDER!";
$sql = 'SELECT time_id, time_class FROM time ORDER BY time_id ASC';
$levels_result = $connection->query($sql);
$drop_down = array('time_id' => array('time_class' => $levels_result));
$table->set_drop_down($drop_down);
/********************************************************************/
/* CONFIGURES Form structure */
$top_form = array('action' => '?controller=time&action=add', 'div' => "class='solitary_input'", 'method' => 'post', 'id' => 'top_form', 'elements' => array(1 => array('drop_down' => 'time_id'), 2 => array('submit' => 'add')));
$table->set_top_form($top_form);
/********************************************************************/
/* CONFIGURES Main table contents (from MySQL) */
$columns = array('Time', 'Action');
$table->set_html_table_column_names($columns);
$sql = "SELECT time.time_id, time_class\n FROM time\n ORDER BY time_id ASC\n ";
$result = $connection->query($sql);
if ($connection->get_row_num() == 0) {
$content .= "<p>Currently, you have no time configured. Choose one and click [ADD].";
} else {
$content .= "<p>Currently, you have " . $connection->get_row_num() . " time configured.";
}
$content .= "</div>";
$details_link = array(1 => array('details', '?controller=time&action=details&id='));
$table->set_details_link($details_link);
$table->set_main_table($result);
/********************************************************************/
$content .= "<div class='third_middle'><table>{$table->get_table()}</table></div>";
$output['content'] = $content;
return $output;
}
示例2: index
public function index()
{
// ______________________________
// | School Year | Level | Action |
// |---------------------|--------|
// | | | [add] |
// |------------------------------|
// | 2015/2016 | | details|
// ------------------------------
//
/* CONFIGURES DROP DOWN Menus (2 in this case: programs and genre) */
$connection = new database();
$table = new simple_table_ops();
$content = '<p>Here you can add courses to the school year ' . $_SESSION['current_school_year'] . '.<p>Each course is a level of school grade.';
$sql = 'SELECT level_id, level FROM levels ORDER BY level_id ASC';
$levels_result = $connection->query($sql);
$drop_down = array('level_id' => array('level' => $levels_result));
$table->set_drop_down($drop_down);
/********************************************************************/
/* CONFIGURES Form structure */
$top_form = array('action' => '?controller=courses&action=add', 'div' => "class='solitary_input'", 'method' => 'post', 'id' => 'top_form', 'elements' => array(1 => array('drop_down' => 'level_id'), 2 => array('submit' => 'add')));
$table->set_top_form($top_form);
/********************************************************************/
/* CONFIGURES Main table contents (from MySQL) */
$columns = array('Level', 'Action');
$table->set_html_table_column_names($columns);
$sql = "SELECT courses.course_id, levels.level\n FROM courses\n JOIN levels ON courses.level_id = levels.level_id\n WHERE courses.school_year_id={$_SESSION['current_school_year_id']}\n ";
$result = $connection->query($sql);
if ($connection->get_row_num() == 0) {
$content .= "<p>Currently, you have no courses configured. Choose one and click [ADD].";
} else {
$content .= "<p>Currently, you have " . $connection->get_row_num() . " courses configured.";
}
$details_link = array(1 => array('details', '?controller=courses&action=details&id='));
$table->set_details_link($details_link);
$table->set_main_table($result);
/********************************************************************/
$content .= "<div class='submit_top_left'><table>{$table->get_table()}</table></div>";
$output['content'] = $content;
return $output;
}
示例3: delete
public function delete()
{
// When deleting check if the selected school_year_id is present in courses table
// if yes, do not delete, and issue a warning
$content = '';
$delete_handler = new database();
$sql = "SELECT school_year_id FROM school_years";
$result = $delete_handler->query($sql);
if ($delete_handler->get_row_num() == 1) {
$content .= '<p>You cannot delete the last school year!';
$output['content'] = $content;
return $output;
}
$sql = "SELECT school_year_id FROM courses WHERE school_year_id={$_GET['id']}";
echo $sql . '<br>';
$result = $delete_handler->query($sql);
if ($delete_handler->get_row_num() !== 0) {
$content .= '<p>You cannot delete this school year!<p>You need first to delete ALL the courses attached to this year.';
$content .= "<p>There are currently {$delete_handler->get_row_num()} courses.";
$output['content'] = $content;
return $output;
}
$table = new simple_table_ops();
$table->set_id_column('school_year_id');
$table->set_table_name('school_years');
$table->delete();
// Check that when deleting, $_SESSION['current_school_year_id'] should be updated
// Forbid last school_year deletion if last in school_years
$sql = "SELECT MAX(school_year_id), school_year FROM school_years";
$school_years_handle = new database();
$new_school_year_result = $school_years_handle->query($sql);
$new_school_year_id = $new_school_year_result[0]['MAX(school_year_id)'];
$new_school_year = $new_school_year_result[0]['school_year'];
$_SESSION['current_school_year_id'] = $new_school_year_id;
$_SESSION['current_school_year'] = $new_school_year;
header("Location: http://" . WEBSITE_URL . "/index.php?controller={$_GET['controller']}&action=index");
}
示例4: details
public function details()
{
//TODO: details in timetable
$connection = new database();
$table = new simple_table_ops();
$id = $_GET['id'];
// timetable_id
$content = "<div class='link_button'>\n <a href='?controller=teachers&action=export'>Export to EXCEL</a>\n <a href='?controller=curricula&action=index'>Curricula</a>\n </div>";
$content .= "<div class='third_left'>";
$content .= '<p>You can configure the timetable for the following course:<p>';
$sql = "SELECT curricula.curriculum_id, CONCAT (teachers.nom, ' ', teachers.prenom, ' | ', teachers.nom_khmer, ' ', teachers.prenom_khmer, ' | ', sexes.sex) as teacher, subjects.subject, levels.level\n FROM curricula\n JOIN courses ON curricula.course_id = courses.course_id\n JOIN subjects ON curricula.subject_id = subjects.subject_id\n JOIN teachers ON teachers.teacher_id = curricula.teacher_id\n JOIN sexes ON teachers.sex_id = sexes.sex_id\n JOIN levels ON courses.level_id = levels.level_id\n JOIN timetables ON timetables.curriculum_id = curricula.curriculum_id\n WHERE timetables.timetable_id = {$_GET['id']}";
$curricula_data = $connection->query($sql);
if ($connection->get_row_num() == 0) {
header("Location: http://" . WEBSITE_URL . "/index.php?controller=curricula&action=index");
}
$curricula_data = $curricula_data[0];
$content .= 'Teacher: ' . $curricula_data['teacher'] . '<br>';
$content .= 'Subject: ' . $curricula_data['subject'] . '<br>';
$content .= 'Level: ' . $curricula_data['level'] . '<br>';
$columns = array('start_time_id, end_time_id, weekday_id, classroom_id, timetable_period_id');
$neat_columns = array('Start Time', 'End Time', 'Week Day', 'Classroom', 'Time Period', 'Update', 'Delete');
// create curriculum_id array
$sql = "SELECT curriculum_id FROM timetables WHERE timetable_id = {$id}";
$curriculum_id_result = $connection->query($sql);
$curriculum_id_array = $curriculum_id_result[0];
// time_id, weekday_id, curriculum_id, classroom_id,
$sql = 'SELECT time_id as start_time_id, time_class as time1 FROM time ORDER BY time_id ASC';
$time1_result = $connection->query($sql);
$sql = 'SELECT time_id as end_time_id, time_class as time2 FROM time ORDER BY time_id ASC';
$time2_result = $connection->query($sql);
$sql = 'SELECT weekday_id, weekday FROM weekdays ORDER BY weekday_id';
$weekdays_result = $connection->query($sql);
$sql = "SELECT timetable_period_id, CONCAT(nom, ', from ', date_from, ' to ', date_to) as timetable_period FROM timetable_periods ORDER BY date_from";
$timetable_periods_result = $connection->query($sql);
$sql = 'SELECT classroom_id, classroom FROM classrooms ORDER BY classroom ASC';
$classrooms_result = $connection->query($sql);
$drop_down = array('start_time_id' => array('start_time' => $time1_result), 'end_time_id' => array('end_time' => $time2_result), 'weekday_id' => array('weekday' => $weekdays_result), 'timetable_period_id' => array('timetable_period' => $timetable_periods_result), 'classroom_id' => array('classroom' => $classrooms_result));
/********************************************************************/
/* CONFIGURES Form structure */
$form = array('action' => '?controller=timetable&action=update&id=' . $id, 'div' => "class='solitary_input'", 'div_button' => "class='submit_button1'", 'method' => 'post', 'action_links' => array(1 => array('delete', '?controller=timetable&action=delete&id=')), 'id' => 'top_form', 'elements' => array(1 => array('hidden' => $curriculum_id_array), 3 => array('drop_down' => 'start_time_id'), 4 => array('drop_down' => 'end_time_id'), 5 => array('drop_down' => 'weekday_id'), 6 => array('drop_down' => 'classroom_id'), 7 => array('drop_down' => 'timetable_period_id'), 10 => array('submit' => 'update')));
$table->set_top_form($form);
$table->set_table_name('timetables');
$table->set_id_column('timetable_id');
$table->set_table_column_names($columns);
$table->set_html_table_column_names($neat_columns);
$table->set_values_form();
// set values found in database into form elements when building top_form
$table->set_drop_down($drop_down);
$table->set_form_array($form);
$content .= "</div>";
$content .= " <div class='two_thirds_right'><table>" . $table->details() . '</table></div>';
$output['content'] = $content;
return $output;
}
示例5: update
public function update()
{
// update student based on $_post variables and $_get['id']
//UPDATE multiple tables:
// UPDATE tables SET table1.col1=table2.col2
// WHERE condition;
$sql = 'UPDATE students SET
nom=?, prenom=?, nom_khmer=?, prenom_khmer=?, sex_id=?, matricule=?, dob=?, program_id=?, active_id=?
WHERE student_id=?';
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$nom_khmer = $_POST['nom_khmer'];
$prenom_khmer = $_POST['prenom_khmer'];
$sex_id = $_POST['sex_id'];
$matricule = $_POST['matricule'];
$dob = $_POST['dob'];
$program_id = $_POST['program_id'];
$active_id = $_POST['active_id'];
$id = $_GET['id'];
$data = array($nom, $prenom, $nom_khmer, $prenom_khmer, $sex_id, $matricule, $dob, $program_id, $active_id, $id);
$connection = new database();
if ($connection->update($sql, $data)) {
$content = "Affected rows: ";
$content .= $connection->get_row_num();
} else {
$content = "Could not update student!";
}
header("Location: http://" . WEBSITE_URL . "/index.php?controller=students&action=index");
$output['content'] = $content;
return $output;
}
示例6: index
public function index()
{
$content = "";
/* CONFIGURES DROP DOWN Menus (2 in this case: programs and genre) */
$connection = new database();
$table = new simple_table_ops();
$sql = "SELECT courses.course_id, levels.level\n FROM courses\n JOIN levels ON courses.level_id = levels.level_id\n WHERE courses.school_year_id = {$_SESSION['current_school_year_id']}\n ORDER BY levels.level_id ASC\n\n ";
$courses_result = $connection->query($sql);
if ($connection->get_row_num() == 0) {
// no courses were setup - redirect
$content .= "<p> No courses were found for the year {$_SESSION['current_school_year']}.<p>Go to [COURSES] to add a new one.";
$output['content'] = $content;
return $output;
}
$drop_down = array('course_id' => array('course' => $courses_result));
$table->set_drop_down($drop_down);
/* CONFIGURES top column in neat names and html formatted */
$neat_column_names = array('Select', 'Surname', 'Name', 'Surname Kh', 'Name Kh', 'Genre', 'Program', 'Age');
$table->set_html_table_column_names($neat_column_names);
/********************************************************************/
/* CONFIGURES main left table */
// selects ALL students from students where student_id is not inside [COURSES] table
// need: select students that are not found in [COURSES] of the current_year_id.
/*
$sql = "SELECT students.student_id, students.nom, students.prenom, students.nom_khmer, students.prenom_khmer, sexes.sex, programs.program, TIMESTAMPDIFF(YEAR,students.dob,NOW()) AS age
FROM students
LEFT JOIN courses ON courses.student_id=students.student_id
JOIN sexes ON students.sex_id=sexes.sex_id
JOIN programs ON students.program_id=programs.program_id
WHERE courses.school_year_id Is Null AND students.active_id=1
ORDER BY age ASC, nom ASC, prenom ASC";
*/
$sql = "SELECT students.student_id, students.nom, students.prenom, students.nom_khmer, students.prenom_khmer, sexes.sex, programs.program, TIMESTAMPDIFF(YEAR,students.dob,NOW()) AS age\n FROM students\n JOIN sexes ON students.sex_id=sexes.sex_id\n JOIN programs ON students.program_id=programs.program_id\n WHERE students.active_id=1 AND NOT students.student_id IN (\n SELECT students.student_id\n FROM students\n JOIN classes ON classes.student_id = students.student_id\n JOIN courses ON courses.course_id = classes.course_id\n JOIN school_years ON school_years.school_year_id = courses.school_year_id\n WHERE courses.school_year_id = {$_SESSION['current_school_year_id']})\n ORDER BY age ASC, students.prenom, students.nom";
// CHECK: if no result, warn that you need to add students to students table before making courses!
// $content .= 'Before building courses, you need to add STUDENTS to the [STUDENTS] table!';
$result = $connection->query($sql);
if ($connection->get_row_num() == 0) {
// no records found -
$output['menu2'] = "No free students were found. To add a new STUDENT, click <a href='?controller=students&action=index'>HERE</a>.";
}
$table->set_id_column('student_id');
$table->set_html_check_box($result);
$content .= "<div class='submit_top_left'><table width='100%'><tr><td>" . $table->get_html_drop_down('course_id') . "</td></tr></table></div>";
$content .= "<div class='half_left'><br><br><table width='100%'>";
$content .= $table->get_html_table_column_names();
$content .= "<form action = '?controller=classes&action=move' method = 'post' id='top_form'>";
$content .= $table->get_html_check_box();
$content .= "<div class='submit_top_left2'><input type ='submit' value='Move selected STUDENTS to Course ->'></div>";
$content .= "</form></table></div>";
//TODO (secondary):
// foreach (total of courses.levels_id)
// select student from classes
// assemble table with new tables from select and add row containing levels.level on top
// alternate div class table_row1/table_row2 for each group of class
// end foreach
//
$courses_sql = "SELECT classes.classe_id,\n levels.level,\n students.nom, students.prenom, students.nom_khmer, students.prenom_khmer,\n sexes.sex,\n programs.program\n\n FROM courses\n JOIN classes ON classes.course_id = courses.course_id\n JOIN students ON classes.student_id = students.student_id\n JOIN programs ON programs.program_id = students.program_id\n JOIN sexes ON sexes.sex_id = students.sex_id\n JOIN school_years ON school_years.school_year_id = courses.school_year_id\n JOIN levels ON levels.level_id = courses.level_id\n WHERE courses.school_year_id = " . $_SESSION['current_school_year_id'] . "\n ORDER BY school_years.school_year DESC, levels.level_id ASC, students.nom ASC, students.prenom ASC\n ";
// TODO: priority high - generate tables per level_id
$courses_table = new simple_table_ops();
$columns = array('Surname', 'Name', 'Surname Kh', 'Name Kh', 'Genre', 'Program', 'Action');
$courses_table->set_html_table_column_names($columns);
$details_link = array(1 => array('details', '?controller=classes&action=details&id='));
$courses_table->set_details_link($details_link);
$content .= "<div class='half_right'>";
$sql = "SELECT level_id FROM courses GROUP BY level_id ORDER BY level_id";
$levels_result = $connection->query($sql);
foreach ($levels_result as $row) {
$content .= "<table width='100%'>";
foreach ($row as $field => $value) {
$courses_sql = "SELECT classes.classe_id,\n\n students.nom, students.prenom, students.nom_khmer, students.prenom_khmer,\n sexes.sex,\n programs.program\n\n FROM courses\n JOIN classes ON classes.course_id = courses.course_id\n JOIN students ON classes.student_id = students.student_id\n JOIN programs ON programs.program_id = students.program_id\n JOIN sexes ON sexes.sex_id = students.sex_id\n JOIN school_years ON school_years.school_year_id = courses.school_year_id\n JOIN levels ON levels.level_id = courses.level_id\n WHERE courses.school_year_id = " . $_SESSION['current_school_year_id'] . " AND courses.level_id={$value}\n ORDER BY school_years.school_year DESC, levels.level_id ASC, students.nom ASC, students.prenom ASC\n ";
$courses_table->set_main_table($connection->query($courses_sql));
$content .= "<tr><td colspan='7'>Grade: " . $value . "</td></tr>";
$content .= $courses_table->get_html_table_column_names();
$content .= $courses_table->get_html_main_table();
$content .= '</td></tr>';
}
$content .= "</table>";
}
$content .= "</div>";
/********************************************************************/
$output['content'] = $content;
return $output;
}
示例7: update
public function update()
{
/* UPDATE multiple tables:
// UPDATE tables SET table1.col1=table2.col2
// WHERE condition;
// needs:
// 1. column names - $this->cols
// 2. table name - $this->table_name
// 3. id - $_GET['id'] from action form
example:
$sql = " UPDATE {$this->table_name} SET
nom=?, prenom=?, nom_khmer=?, prenom_khmer=?, sex_id=?, matricule=?, dob=?, program_id=?
WHERE student_id=?";
/********************************************/
$security_handler = new security();
$security_handler->check_token();
$id = $_GET['id'];
$i = 0;
$cols = '';
$values = array();
foreach ($this->cols as $column) {
array_push($values, $_POST[$column]);
$cols .= $column . '=?,';
$i++;
}
array_push($values, $id);
// add last value to the array, which corresponds to the record id number.
$cols = substr($cols, 0, -1);
$sql = "UPDATE " . $this->table_name . " SET " . $cols . " WHERE " . $this->id_column . "=?";
//echo "<p>sql: ".$sql."<br>";
//echo "<p>values: ";
//var_dump ($values);
$connection = new database();
if ($connection->update($sql, $values)) {
$_SESSION['log'] .= new timestamp("Affected rows: " . $connection->get_row_num());
} else {
$_SESSION['log'] .= new timestamp("Record was not updated in {$_GET['controller']}!");
}
//die();
}
示例8: submit
public function submit()
{
$output = array();
if (isset($_POST['username']) and isset($_POST['password'])) {
$username = trim($_POST['username']);
$password = trim($_POST['password']);
// TODO: implement password hashing check
//
$sql = 'SELECT user_id, email, profile_id, password FROM users WHERE username=?';
$data = array($username);
$connection = new database();
$result = $connection->fetchAll($sql, $data);
$hash = $result[0]['password'];
/* REQUIRES php >= 5.5.0
if (password_verify($password, $hash)) {
echo "ok";
} else {
echo "not ok";
}
//die();
*/
// for PHP <=5.5.0
//if ($connection->get_row_num()==1 ) {
if (crypt($password, MY_SALT) == $hash) {
/* GATEWAY: define here all session variables based on user:
* User Variables:
* 1. css_username
* 2. css_user_id
* 3. css_email
* 4. css_profile_id
* System variables:
* 1. main_menu
* 2. upright_menu
* 3. last_login
* 4. controllers->actions (array)
* [controller][action][permission] where [profile_id]=[user_profile_id]
* 5. current_school_year -> max school year. If NO school year is configured, insert current year and select it.
*/
$_SESSION['css_username'] = $username;
$_SESSION['log'] .= new timestamp("user {$username} has logged in");
$_SESSION['css_user_id'] = $result[0]['user_id'];
$_SESSION['css_email'] = $result[0]['email'];
$_SESSION['css_profile_id'] = $result[0]['profile_id'];
$_SESSION['user_ip'] = $_SERVER['REMOTE_ADDR'];
// small security control
// Requires PECL extension to work
//$country = geoip_country_name_by_name($_SESSION['user_ip']);
$sql = "INSERT INTO login_activity (user_id, profile_id, username, email, ip_address) VALUES ('" . $result[0]['user_id'] . "', '" . $result[0]['profile_id'] . "', '" . $username . "', '" . $result[0]['email'] . "', '" . $_SESSION['user_ip'] . "')";
$login_activity = $connection->query($sql);
// TODO: acl structure
// results comes as:
// $acl_results = array (
// 0 => array (
// 'controller' => 'about',
// 'c_action' => 'index',
// 'active_id' => 1),
// 1 => array (....
// Refactor to:
// $acl_results_refactored = array(
// 'about' => array('index' => 1),
//
// 'admin' => array('index' => 1,
// 'log' => 1,
// 'users_index' => 1));
// 1. extract all controllers from DB which corresponds to user
// 2. foreach $controllers['controller'] add $c_action and corresponding permission
$sql = "SELECT controllers.controller, controllers.c_action, acl.active_id\n FROM acl\n JOIN controllers ON controllers.controller_id = acl.controller_id\n WHERE acl.profile_id=?\n GROUP BY controllers.controller_id ASC\n ";
$data = array($_SESSION['css_profile_id']);
$acl_results = $connection->fetchAll($sql, $data);
//var_dump($acl_results);
$acl_map = array();
$i = 0;
foreach ($acl_results as $row) {
$acl_map[$row['controller'] . '.' . $row['c_action']] = $row['active_id'];
// preferable way to add a single row to an existing array
$i++;
}
//var_dump ($acl_map);
$_SESSION['acl_map'] = $acl_map;
$date = new DateTime();
$_SESSION['last_login'] = $date->format('U');
$sql = "SELECT school_year_id, school_year\n FROM school_years\n ORDER BY school_year DESC\n LIMIT 1";
$school_years_result = $connection->query($sql);
if ($connection->get_row_num() == 0) {
// no school year has been registered, INSERT INTO school_years the current school year
$date = new DateTime();
$current_year = $date->format('Y');
$current_month = $date->format('m');
if ($current_month >= 9 and $current_month <= 12) {
$current_school_year = $current_year . '/' . ($current_year + 1);
} else {
$current_school_year = $current_year - 1 . '/' . $current_year;
}
$current_school_year = strval($current_school_year);
$insert_school_year_sql = "INSERT INTO school_years (school_year)\n VALUES ('" . $current_school_year . "')";
$connection->query($insert_school_year_sql);
// Get last school_year_id and assign to $_SESSION['current....
$_SESSION['current_school_year_id'] = $connection->last_Inserted_id();
$_SESSION['current_school_year'] = $current_school_year;
//.........这里部分代码省略.........
示例9: setschoolyear
public function setschoolyear()
{
// set school year : comes from drop down $_POST
if (isset($_POST['school_year_id'])) {
if (is_numeric($_POST['school_year_id'])) {
$school_year_handle = new database();
$sql = "SELECT school_year FROM school_years WHERE school_year_id=?";
$data = array($_POST['school_year_id']);
$result = $school_year_handle->fetchAll($sql, $data);
if ($school_year_handle->get_row_num() == 1) {
$_SESSION['current_school_year_id'] = $_POST['school_year_id'];
$_SESSION['current_school_year'] = $result[0]['school_year'];
} else {
}
}
}
//echo $_SESSION['school_year'].'<br>';
//var_dump ($result);
//die();
header("Location: http://" . WEBSITE_URL . "/index.php?controller={$_GET['controller']}&action=index");
}