Login (Javascript, PHP, MYSQL Database)
A. Features of application
B. Files required for application
C. Programming skills required for application: Php, Javascript, mysql, server operations, and English language.
D. Guidelines to program application
E. Problems that can arise
A. Features of application
Registration online
Login
password retrieval
B. Files required for application
How do you program this application?
1. Create a database with tables
2. Create php application to interact with the database
What files do you need?
Registration files
1. Database with tables
Database name qureshiu_my_db or qureshiu_db
Table name Persons
Variables Firstname Lastname Age
What essential attributes are required for tables?
Column(Variable) Type (Varchar for text, int for number)
Collation (Latin 1_Swedish_c) Attributes Null(No) Default(None) Extra Action
2.submit.html,
3. insert.php (Update database record)
4. thanks.php
Login Files
1. login.php, logincheck.php, connect.php, welcome.php _______{login(Same page displayed to all)}
{User Control Panel}usercontrolpanel.php, connect.php, login1.php{login(User control panel displayed from database)}
What problems may occur?
Server has not be configured properly
Chmod files to 644
It was 664
Folder 755
cPanel Version 11.30.5 (build 3) 11.30.5.3 is a better version.
Syntax error
Browser problem
Required files not available
How can I use PHP to create login-controlled web pages?
This is usually done by using PHP sessions in conjunction with a database. The database contains login information which is used to verify the user's login. Upon successful login, a session variable can be set. Controlled pages can then first check to see if this session variable exists and is properly set, and if not then redirect the user to the login page. Here is one article of many on the web on this subject.
2. What is a session?
3. What Is a Session in PHP?
4. What are sessions?
5. Why do I want to use them?
6. How do I use them?
7. How do I use a Session?
8. How do sessions work?
9. How do I change the value of a session variable?
10. Can I destroy a session variable?
11. What should I do to destroy a whole session?
12. Can I store an array in a session?
13. Can I store an object in a session?
14. Can I store an file pointer in a session?
15. Can I store a function in a session?
16. Can I store an image in a session?
17. How are sessions stored?
18. Storing sessions with SQLite
19. When do sessions expire?
20. How can I send headers then start a session?
21. How can I check if a session is started?
22. How can I check if a session uses a cookie or query string
23. Session Configuration with php.ini
24. Session security
How to set cookies in PHP?
What is the difference between include and require?
What are the functions for IMAP?
What is Type juggle in php?
What is Joomla in PHP?
What is the difference between Split and Explode?
How to upload files using PHP?
What is the difference between Notify URL and Return URL?
Describe functions STRSTR() and STRISTR.
What are the various methods to pass data from one web page to another web page?
Explain how to execute a PHP script using command line.
How can we increase the execution time of a PHP script?
Explain the purpose of output buffering in PHP.
Describe session in PHP.
How can we know the number of days between two given dates using PHP?
Explain how to execute a PHP script using command line.
How can we increase the execution time of a PHP script?
Explain the purpose of output buffering in PHP.
Describe session in PHP.
How can we know the number of days between two given dates using PHP?
Why Would I Want A Database?
What Do I Need?
Testing For PHP and MySQL
There is a simple test for both PHP and MySQL. Open a text editor and type in the following:
phpinfo();
?>
and save it as phpinfo.php
Now upload this to your webspace and go to phpinfo.php in your browser. If you have PHP installed you will see a huge page with all the details of your PHP installation on it. Next, scroll down through all this information. If you find a section about MySQL then you will know that MySQL is installed.
Managing Databases
Although all the database administrative options can be done through PHP scripts, I strongly suggest installing a copy of PHPMyAdmin on your server. It is an excellent free set of scripts that will provide you with an administrative interface for your MySQL database(s). You can add, remove, edit, backup and view your databases using this and it is especially useful when troubleshooting your databases.
You may be wondering why I have used VARCHAR fields for the phone/fax numbers even though they are made up of digits. You could use INT fields but I prefer to use VARCHAR as it will allow dashes and spaces in the number, as well as textual numbers (like 1800-COMPANY) and as we will not be initiating phone calls from the web it is not a problem.
There is one other thing you should be aware of in this database. The id field will also be set as PRIMARY, INDEX, UNIQUE and will be set to auto_increment (found under Extra in PH
PMyAdmin). The reason for this is that this will be the field identifier (primary and index) and so must be unique. The auto increment setting means that whenever you add a record, as long as you don't specify an id, it will be given the next number.
If you are using PHPMyAdmin or a management program you can now create this in a table called contacts.
PHP Date
PHP Include
PHP File
PHP File Upload
PHP Cookies
PHP Sessions
PHP E-mail
PHP Secure E-mail
PHP Error
PHP Exception
PHP Filter
PHP Database
MySQL Introduction
MySQL Connect
MySQL Create
MySQL Insert
MySQL Select
MySQL Where
MySQL Order By
MySQL Update
MySQL Delete
PHP ODBC
http://www.w3schools.com/php/php_mysql_where.asp
PHP XML
XML Expat Parser
XML DOM
XML SimpleXML
PHP and AJAX
AJAX Introduction
XMLHttpRequest
AJAX Suggest
AJAX XML
AJAX Database
AJAX responseXML
AJAX Live Search
AJAX RSS Reader
AJAX Poll
PHP Reference
PHP Array
PHP Calendar
PHP Date
PHP Directory
PHP Error
PHP Filesystem
PHP Filter
PHP FTP
PHP HTTP
PHP Libxml
PHP Mail
PHP Math
PHP Misc
PHP MySQL
PHP SimpleXML
PHP String
PHP XML
PHP Zip
PHP Quiz
PHP Quiz
PHP Certificate
Q:1
How can we submit a form without a submit button?
A:1
The main idea behind this is to use Java script submit() function in order to submit the form without explicitly clicking any submit button. You can attach the document.formname.submit() method to onclick, onchange events of different inputs and perform the form submission. you
can even built a timer function where you can automatically submit the form after xx seconds once the loading is done (can be seen in online test sites).
Q:2
In how many ways we can retrieve the data in the result set of MySQL using PHP?
A:2
You can do it by 4 Ways
1. mysql_fetch_row.
2. mysql_fetch_array
3. mysql_fetch_object
4. mysql_fetch_assoc
Q:3
What is the difference between mysql_fetch_object and mysql_fetch_array?
A:3
mysql_fetch_object() is similar tomysql_fetch_array(), with one difference - an object is returned, instead of an array. Indirectly, that means that you can only access the data by the field names, and not by their offsets (numbers are illegal property names).
Q:4
What is the difference between $message and $$message?
A:4
It is a classic example of PHP’s variable variables. take the following example.$message = “Mizan”;$$message = “is a moderator of PHPXperts.”;$message is a simple PHP variable that we are used to. But the $$message is not a very familiar face. It creates a variable name $mizan
with the value “is a moderator of PHPXperts.” assigned. break it like this${$message} => $mizanSometimes it is convenient to be able to have variable variable names. That is, a variable name which can be set and used dynamically.
Q:5
How can we extract string ‘abc.com ‘ from a string ‘http://info@abc.com’
using regular expression of PHP?
A:5
preg_match(”/^http:\/\/.+@(.+)$/”,’http://info@abc.com’,$found);
echo $found[1];
Q:6
How can we create a database using PHP and MySQL?
A:6
We can create MySQL database with the use of
mysql_create_db(“Database Name”)
Q:7
What are the differences between require and include, include_once and require_once?
A:7
The include() statement includes and evaluates the specified file.The documentation below also applies to require(). The two constructs are identical in every way except how they handlefailure. include() produces a Warning while require() results in a Fatal Error. In other words, use require() if you want a missingfile to halt processing of the page.
include() does not behave this way, the script will continue regardless.
The include_once() statement includes and evaluates the specified file during the execution of the script. This is a behavior similar to the include() statement, with the only differencebeing that if the code from a file has already been included, it will not be included again. As the name suggests, it will be included just once.include_once() should be used in cases where the same file might be included and evaluated more than once during a particularexecution of a script, and you want to be sure that it is included exactly once to avoid problems with function redefinitions, variable value reassignments, etc.
require_once() should be used in cases where the same file might be included and evaluated more than once during a particular execution of a script, and you want to be sure that it is included exactly once to avoid problems with function redefinitions, variable value reassignments, etc.
Q:8
Can we use include (”abc.PHP”) two times in a PHP page “makeit.PHP”?
A:8
Yes we can use include() more than one time in any page though it is not a very good practice.
Q:9
What are the different tables present in MySQL, which type of table is generated when we are creating a table in the following syntax:
create table employee (eno int(2),ename varchar(10)) ?
A:9
Total 5 types of tables we can create
1. MyISAM
2. Heap
3. Merge
4. INNO DB
5. ISAM
MyISAM is the default storage engine as of MySQL 3.23 and as a result if we do not specify the table name explicitly it will be assigned to the default engine.
Q:10
How can we encrypt the username and password using PHP?
A:10
The functions in this section perform encryption and decryption, and compression and uncompression:
encryption decryption
AES_ENCRYT() AES_DECRYPT()
ENCODE() DECODE()
DES_ENCRYPT() DES_DECRYPT()
ENCRYPT() Not available
MD5() Not available
OLD_PASSWORD() Not available
PASSWORD() Not available
SHA() or SHA1() Not available
Not available UNCOMPRESSED_LENGTH()
MySQL DatabasesMySQL is the most popular Open Source Relational SQL database management system.
MySQL is one of the best RDBMS being used for developing web based software applications.
MySQL database application should be installed on your web server. MySQL is very popular so you will have no problem in finding a web host that offers MySQL. Most web host also offer a (GUI) Graphical user interface application such as PHPMyAdmin for working with MySQL databases.
What is MySQL?
MySQL is a database system used on the web
MySQL is a database system that runs on a server
MySQL is ideal for both small and large applications
MySQL is very fast, reliable, and easy to use
MySQL supports standard SQL
MySQL compiles on a number of platforms
MySQL is free to download and use
Before we proceed to explain MySQL database system, lets revise few definitions related to database.
•Database: A database is a collection of tables, with related data.
•Table: A table is a matrix with data. A table in a database looks like a simple spreadsheet.
•Column: One column (data element) contains data of one and the same kind, for example the column postcode.
•Row: A row (= tuple, entry or record) is a group of related data, for example the data of one subscription.
•Redundancy: Storing data twice, redundantly to make the system faster.
•Primary Key: A primary key is unique. A key value can not occur twice in one table. With a key you can find at most one row.
•Foreign Key: A foreign key is the linking pin between two tables.
•Compound Key: A compound key (composite key) is a key that consists of multiple columns, because one column is not sufficiently unique.
•Index: An index in a database resembles an index at the back of a book.
•Referential Integrity: Referential Integrity makes sure that a foreign key value always points to an existing row.
MySQL is becoming so popular because of many good reasons:•MySQL is released under an open-source license. So you have nothing to pay to use it.
•MySQL is a very powerful program in its own right. It handles a large subset of the functionality of the most expensive and powerful database packages.
•MySQL uses a standard form of the well-known SQL data language.
•MySQL works on many operating systems and with many languages including PHP, PERL, C, C++, JAVA etc.
•MySQL works very quickly and works well even with large data sets.
•MySQL is very friendly to PHP, the most appriciated language for web development.
•MySQL supports large databases, up to 50 million rows or more in a table. The default file size limit for a table is 4GB, but you can increase this (if your operating system can handle it) to a theoretical limit of 8 million terabytes (TB).
•MySQL is customizable. The open source GPL license allows programmers to modify the MySQL software to fit their own specific environments.
75 Cool Things You Can Do using the MySQL Enterprise Monitor
General
1.
Check the health, security, performance and available of all your MySQL servers from a consolidated view.
2.
Monitor 600+ MySQL and OS specific variables.
3.
Use 160+ MySQL provided Advisor Rules to enforce security, performance, replication best practices.
4.
Define and customize thresholds and alert severity levels to meet your specific requirements.
5.
Automatically receive new and updated Advisor Rules and MySQL/OS Graphs periodically as soon as they are available.
6.
Quickly test applications to ensure they are secure, tuned and working efficiently before deploying them into production.
7.
Make it easier to get approvals for hardware upgrades by sending a graph to your boss that shows CPU/memory utilization creeping towards the danger zone over a period of time.
Monitoring
8.
Download, install, configure and begin proactively monitoring all MySQL servers within 20 minutes.
9.
Auto detect, group and monitor all of your Replication topologies.
10.
Use Use color-coded server heat chart for at-a-glance view into the health,
security and performance of all your MySQL servers.
11.
Monitor groups of MySQL servers by different Service Level Agreement (SLA) requirements.
12.
Monitor all your MySQL servers or only specific groups of MySQL servers.
13.
Monitor and get alerted to only events you deem critical.
14.
Monitor your MySQL servers across multiple geographic locations.
15.
Monitor your MySQL servers remotely from home or away from the office.
16.
Quickly identify the up/down status of your MySQL servers.
17.
Quickly correlate OS system performance spikes with MySQL related performance issues.
18.
Visually correlate MySQL and OS performance issues with query activity quickly.
19.
Help predict when you will need more hardware to scale-out further using graphs of historical data.
Query Analyzer
20.
Quickly find and tune the queries behind system performance spikes.
21.
Identify and fix poorly-written queries across all your MySQL servers from a single console.
Analyze queries aggregated by execution times, number of executions, total rows, or total bytes.
24.
View an EXPLAIN to determine the current access path and index usage.
25.
View historical queries by a specific time interval or by a date/time range.
26.
View and sort queries by MySQL server, application grouping, database, query type or content.
27.
Analyze query load across all your MySQL replicated read slaves.
28.
Easily find newly deployed queries by when they were first seen.
29.
Tag queries you want to watch as they are tuned.
30.
Test and tune your code during development before it is promoted to production.
31.
Sample queries during non-peak hours for later analysis.
32.
Quickly detect when new or changed queries are first seen.
33.
Filter for specific query problems like full table scans and bad indexes using advanced global search options.
34.
Perform in-depth cause analysis using MySQL Connector Plug-ins.
Performance
35.
Receive tailored advice on how to tune MySQL's built in caching capabilities to improve throughput.
36.
Get immediately notified if indexes have been altered or dropped which will impact and performance of your database.
37.
Get alerted to poorly running queries so you can improve application performance.
38.
Monitor dynamic metrics over time and leverage advice on tuning for
optimal performance.
Administration
39.
Monitor MySQL Enterprise Backup operations and quickly identify backup related issues or servers that need backup.
40.
Resolve issues quickly using MySQL recommended commands to fix security, replication, schema, and performance issues.
41.
Notify multiple DBAs as a single group when thresholds are violated so that critical alerts are addressed immediately.
42.
Quickly identify the version numbers of all of my MySQL Servers so you can make sure they are all current.
43.
Get immediately notified if databases or tables have been altered or dropped.
44.
Learn from others' experience using historical annotations on issues that have been previously corrected and closed.
45.
Get notified before maximum connection limits are reached to ensure the server does not run out of resources.
46.
Gain deeper insight into reported issues with the integrated MySQL Enterprise Knowledge Base and MySQL Reference Manual.
47.
Ensure your MySQL servers are configured for highest level of performance
and recoverability
48.
Ensure your MySQL Servers are configured to detect/identify poorly
performing queries
Replication
49.
Monitor configuration, synchronization and performance of master/slaves configured for semi-synchronous replication.
50.
Quickly identify and resolve MySQL replication latency issues such as Slave Lag.
51.
Get notified if a slave has been stopped or has stopped replicating to ensure read capacity is maintained.
52.
Verify that slaves are configured to start as masters if necessary.
53.
Determine exactly which thread or permission setting has stopped the replication process.
54.
Secure slaves by ensuring that ALTER TABLE and DROP TABLE statements are not replicated.
55.
Monitor the status of all your Master/Slaves from a consolidate view.
56.
Drill into each Master/Slave for status details.
57.
Ensure Binary Log purge frequency and size limits are configured correctly.
58.
Identify network issues that impact Master/Slave synchronization.
59.
Identify and correct Relay log issues that can lead to Master/Slave synchronization issues.
Security
60.
Resolve security vulnerabilities across all MySQL servers in under 20 minutes.
61.
Get immediately notified of security vulnerabilities as they occur, such as Accounts without Passwords, Accounts with Global Privileges, and Servers with Anonymous Accounts.
62.
Get notified if privileges are being granted or revoked without your knowledge.
63.
Determine if you have appropriately limited external domain access to your server.
64.
Verify that user accounts don't have powerful file write privileges.
65.
Monitor dynamic security settings over time and close loopholes as they occur.
66.
Use single sign-on capabilities through LDAP integration.
MySQL Cluster
67.
Monitor health and performance of MySQL Cluster data nodes.
Customization
68.
Use the MySQL provided Advisor Rules as a template to build your own custom Advisors.
69.
Create and manage server groupings (by location, application, etc.).
70.
Create targeted notification groups (by server, location, application, etc.).
71.
Create custom SMTP and SNMP notifications.
72.
Apply custom thresholds and alerts for specific servers, applications, notification groups.
73.
Get live feeds for your open support issues.
74.
Get live feeds for MySQL product updates, announcements and alerts.
75.
Resolve problems faster by providing the option to collect and package server specific MySQL, OS and query diagnostic for MySQL Support.
How do I send emails with PHP?
Simply put, by using the mail() function.
1) What is PHP?
PHP is a web language based on scripts that allows developers to dynamically create generated web pages.
2) What does the initials of PHP stand for?
PHP means PHP: Hypertext Preprocessor.
3) Which programming language does PHP resemble to?
PHP syntax resembles Perl and C
4) What does PEAR stands for?
PEAR means “PHP Extension and Application Repository”. it extends PHP and provides a higher level of programming for web developers.
5) What is the actually used PHP version?
Version 5 is the actually used version of PHP.
6) How do you execute a PHP script from the command line?
Just use the PHP command line interface (CLI) and specify the file name of the script to be executed as follows:
[php]
php script.php
[/php]
7) How to run the interactive PHP shell from the command line interface?
Just use the PHP CLI program with the option -a as follows:
[php]
php -a
[/php]
8 What are the correct and the most two common way to start and finish a PHP block of code?
The two most common ways to start and finish a PHP script are: and [--- PHP code ---] ?>
9) How can we display the output directly to the browser?
To be able to display the output directly to the browser, we have to use the special tags = and ?>.
10) What is the main difference between PHP 4 and PHP 5?
PHP 5 presents many additional OOP (Object Oriented Programming) features.
v
11) Is multiple inheritance supported in PHP?
PHP includes only single inheritance, it means that a class can be extended from only one single class using the keyword ‘extended’.
12) What is the meaning of a final class and a final method?
‘final’ is introduced in PHP5. Final class means that this class cannot be extended and a final method cannot be overrided.
13) How comparison of objects is done in PHP5?
We use the operator ‘==’ to test is two object are instanced from the same class and have same attributes and equal values. We can test if two object are refering to the same instance of the same class by the use of the identity operator ‘===’.
14) How can PHP and HTML interact?
It is possible to generate HTML through PHP scripts, and it is possible to pass informations from HTML to PHP.
15) What type of operation is needed when passing values through a form or an URL?
If we would like to pass values througn a form or an URL then we need to encode and to decode them using htmlspecialchars() and urlencode().
16) How can PHP and Javascript interact?
PHP and Javascript cannot directly interacts since PHP is a server side language and Javascript is a client side language. However we can exchange variables since PHP is able to generate Javascript code to be executed by the browser and it is possible to pass specific variables back to PHP via the URL.
17) What is needed to be able to use image function?
GD library is needed to be able execute image functions.
18) What is the use of the function ‘imagetypes()’?
imagetypes() gives the image format and types supported by the current version of GD-PHP.
19) What are the functions to be used to get the image’s properties (size, width and height)?
The functions are getimagesize() for size, imagesx() for width and imagesy() for height.
20) How failures in execution are handled with include() and require() functions?
If the function require() cannot access to the file then it ends with a fatal error. However, the include() function gives a warning and the PHP script continues to execute.
21) What is the main difference between require() and require_once()?
require() and require_once() perform the same task except that the second function checks if the PHP script is already included or not before executing it.
(same for include_once() and include())
22) How can I display text with a PHP script?
Two methods are possible:
[php]
[/php]
23) How can we display information of a variable and readable by human with PHP?
To be able to display a human-readable result we use print_r().
24) How is it possible to set an infinite execution time for PHP script?
The set_time_limit(0) added at the beginning of a script sets to infinite the time of execution to not have the PHP error ‘maximum execution time exceeded’.It is also possible to specify this in the php.ini file.
25) What does the PHP error ‘Parse error in PHP – unexpected T_variable at line x’ means?
This is a PHP syntax error expressing that a mistake at the line x stops parsing and executing the program.
26) What should we do to be able to export data into an Excel file?
The most common and used way is to get data into a format supported by Excel. For example, it is possible to write a .csv file, to choose for example comma as separator between fields and then to open the file with Excel.
27) What is the function file_get_contents() usefull for?
file_get_contents() lets reading a file and storing it in a string variable.
28) How can we connect to a MySQL database from a PHP script?
To be able to connect to a MySQL database, we must use mysql_connect() function as follows:
[php]
[/php]
29) What is the function mysql_pconnect() usefull for?
mysql_pconnect() ensure a persistent connection to the database, it means that the connection do not close when the the PHP script ends.
30) How the result set of Mysql be handled in PHP?
The result set can be handled using mysql_fetch_array, mysql_fetch_assoc, mysql_fetch_object or mysql_fetch_row.
31) How is it possible to know the number of rows returned in result set?
The function mysql_num_rows() returns the number of rows in a result set.
32) Which function gives us the number of affected entries by a query?
mysql_affected_rows() return the number of entries affected by an SQL query.
33) What is the difference between mysql_fetch_object() and mysql_fetch_array()?
The mysql_fetch_object() function collects the first single matching record where mysql_fetch_array() collects all matching records from the table in an array.
34) How can we access the data sent through the URL with the GET method?
In order to access the data sent via the GET method, we you use $_GET array like this:
www.url.com?var=value
$variable = $_GET["var"]; this will now contain ‘value’
35) How can we access the data sent through the URL with the POST method?
To access the data sent this way, you use the $_POST array.
Imagine you have a form field called ‘var’ on the form, when the user clicks submit to the post form, you can then access the value like this:
$_POST["var"];
36) How can we check the value of a given variable is a number?
It is possible to use the dedicated function, is_numeric() to check whether it is a number or not.
37) How can we check the value of a given variable is alphanumeric?
It is possible to use the dedicated function, ctype_alnum to check whether it is an alphanumeric value or not.
38) How do I check if a given variable is empty?
If we want to check whether a variable has a value or not, it is possible to use the empty() function.
39) What does the unlink() function means?
The unlink() function is dedicated for file system handling. It simply deletes the file given as entry.
40) What does the unset() function means?
The unlink() function is dedicated for variable management. It will make a variable undefined.
41) How do I escape data before storing it into the database?
addslashes function enables us to escape data before storage into the database.
42) How is it possible to remove escape characters from a string?
The stripslashes function enables us to remove the escape characters before apostrophes in a string.
43) How can we automatically escape incoming data?
We have to enable the Magic quotes entry in the configuration file of PHP.
44) What does the function get_magic_quotes_gpc() means?
The function get_magic_quotes_gpc() tells us whether the magic quotes is switched on or no.
45) Is it possible to remove the HTML tags from data?
The strip_tags() function enables us to clean a string from the HTML tags.
46) what is the static variable in function useful for?
A static variable is defined within a function only the first time and its value can be modified during function calls as follows:
[php]
[/php]
47) How can we define a variable accessible in functions of a PHP script?
This feature is possible using the global keyword.
48) How is it possible to return a value from a function?
A function returns a value using the instruction ‘return $value;’.
49) What is the most convenient hashing method to be used to hash passwords?
It is preferable to use crypt() which natively supports several hashing algorithms or the function hash() which supports more variants than crypt() rather than using the common hashing algorithms such as md5, sha1 or sha256 because they are conceived to be fast. hence, hashing passwords with these algorithms can vulnerability.
50) Which cryptographic extension provide generation and verification of digital signatures?
The PHP-openssl extension provides several cryptographic operations including generation and verification of digital signatures.
51) How a constant is defined in a PHP script?
The define() directive lets us defining a constant as follows:
define (“ACONSTANT”, 123);
52) How can you pass a variable by reference?
To be able to pass a variable by reference, we use an ampersand in front of it, as follows $var1 = &$var2
53) Will a comparison of an integer 12 and a string “13? work in PHP?
“13? and 12 can be compared in PHP since it casts everything to the integer type.
54) How is it possible to cast types in PHP?
The name of the output type have to be specified in parentheses before the variable which is to be cast as follows:
* (int), (integer) – cast to integer
* (bool), (boolean) – cast to boolean
* (float), (double), (real) – cast to float
* (string) – cast to string
* (array) – cast to array
* (object) – cast to object
55) When a conditional statement is ended with an endif?
When the original if was followed by : and then the code block without braces.
56) How is the ternary conditional operator used in PHP?
It is composed of three expressions: a condition, and two operands describing what instruction should be performed when the specified condition is true or false as follows:
Expression_1 ? Expression_2 : Expression_3;
57) What is the function func_num_args() used for?
The function func_num_args() is used to give the number of parameters passed into a function.
58) If the variable $var1 is set to 10 and the $var2 is set to the character var1, what’s the value of $$var2?
$$var2 contains the value 10.
59) What does accessing a class via :: means?
:: is used to access static methods that do not require object initialization.
60) In PHP, objects are they passed by value or by reference?
In PHP, objects passed by value.
61) Are Parent constructors called implicitly inside a class constructor?
No, a parent constructor have to be called explicitly as follows:
parent::constructor($value)
62) What’s the difference between __sleep and __wakeup?
__sleep returns the array of all the variables that need to be saved, while __wakeup retrieves them.
63) What is faster?
1- Combining two variables as follows:
$variable1 = ‘Hello ‘;
$variable2 = ‘World’;
$variable3 = $variable1.$variable2;
Or
2- $variable3 = “$variable1$variable2?;
$variable3 will contain “Hello World”. The first code is faster than the second code especially for large large sets of data.
64) what is the definition of a session?
A session is a logical object enabling us to preserve temporary data across multiple PHP pages.
65) How to initiate a session in PHP?
The use of the function session_start() lets us activating a session.
66) How is it possible to propagate a session id?
It is possible to propagate a session id via cookies or URL parameters.
67) What is the meaning of a Persistent Cookie?
A persistent cookie is permanently stored in a cookie file on the browser’s computer. By default, cookies are temporary and are erased if we close the browser.
68) When sessions ends?
Sessions automatically ends when the PHP script finishs executing, but can be manually ended using the session_write_close().
69) What is the difference between session_unregister() and session_unset()?
The session_unregister() function unregister a global variable from the current session and the session_unset() function free all session variables.
70) What does $GLOBALS means?
$GLOBALS is associative array including references to all variables which are currently defined in the global scope of the script.
71) What does $_SERVER means?
$_SERVER is an array including information created by the web server such as paths, headers, and script locations.
v
72) What does $_FILES means?
$_FILES is an associative array composed of items sent to the current script via the HTTP POST method.
73) What is the difference between $_FILES['userfile']['name'] and $_FILES['userfile']['tmp_name']?
$_FILES['userfile']['name'] represents the original name of the file on the client machine,
$_FILES['userfile']['tmp_name'] represents the temporary filename of the file stored on the server.
74) How can we get the error when there is a problem to upload a file?
$_FILES['userfile']['error'] contains the error code associated with the uploaded file.
75) How can we change the maximum size of the files to be uploaded?
We can change the maximum size of files to be uploaded by changing upload_max_filesize in php.ini.
76) What does $_ENV means?
$_ENV is an associative array of variables sent to the current PHP script via the environment method.
77) What does $_COOKIE means?
$_COOKIE is an associative array of variables sent to the current PHP script using the HTTP Cookies.
78) What does the scope of variables means?
The scope of a variable is the context within which it is defined. For the most part all PHP variables only have a single scope. This single scope spans included and required files as well.
79) what the difference between the ‘BITWISE AND’ operator and the ‘LOGICAL AND’ operator?
$a and $b: TRUE if both $a and $b are TRUE.
$a & $b: Bits that are set in both $a and $b are set.
80) What are the two main string operators?
The first is the concatenation operator (‘.’), which returns the concatenation of its right and left arguments. The second is (‘.=’), which appends the argument on the right to the argument on the left.
81) What does the array operator ‘===’ means?
$a === $b TRUE if $a and $b have the same key/value pairs in the same order and of the same types.
82) What is the differences between $a != $b and $a !== $b?
!= means inequality (TRUE if $a is not equal to $b) and !== means non-identity (TRUE if $a is not identical to $b).
83) How can we determine whether a PHP variable is an instantiated object of a certain class?
To be able to verify whether a PHP variable is an instantiated object of a certain class we use instanceof.
84) What is the goto statement useful for?
The goto statement can be placed to enable jumping inside the PHP program. The target is pointed by a label followed by a colon, and the instruction is specified as a goto statement followed by the desired target label.
85) what is the difference between Exception::getMessage and Exception::getLine ?
Exception::getMessage lets us getting the Exception message and Exception::getLine lets us getting the line in which the exception occurred.
86) What does the expression Exception::__toString means?
Exception::__toString gives the String representation of the exception.
87) How is it possible to parse a configuration file?
The function parse_ini_file() enables us to load in the ini file specified in filename, and returns the settings in it in an associative array.
88) How can we determine whether a variable is set?
The boolean function isset determines if a variable is set and is not NULL.
89) What is the difference between the functions strstr() and stristr()?
The string function strstr(string allString, string occ) returns part of allString from the first occurrence of occ to the end of allString. This function is case-sensitive. stristr() is identical to strstr() except that it is case insensitive.
90) what is the difference between for and foreach?
for is expressed as follows:
for (expr1; expr2; expr3)
statement
The first expression is executed once at the beginning. In each iteration, expr2 is evaluated. If it is TRUE, the loop continues and the statements inside for are executed. If it evaluates to FALSE, the execution of the loop ends. expr3 is tested at the end of each iteration.
However, foreach provides an easy way to iterate over arrays and it is only used with arrays and objects.
91) Is it possible to submit a form with a dedicated button?
It is possible to use the document.form.submit() function to submit the form. For example:
92) What is the difference between ereg_replace() and eregi_replace()?
The function eregi_replace() is identical to the function ereg_replace() except that it ignores case distinction when matching alphabetic characters.
93) Is it possible to protect special characters in a query string?
Yes, we use the urlencode() function to be able to protect special characters.
94) What are the three classes of errors that can occur in PHP?
The three basic classes of errors are notices (non-critical), warnings (serious errors) and fatal errors (critical errors).
95) What is the difference between characters \034 and \x34?
\034 is octal 34 and \x34 is hex 34.
96) How can we pass the variable through the navigation between the pages?
It is possible to pass the variables between the PHP pages using sessions, cookies or hidden form fields.
97) Is it possible to extend the execution time of a php script?
The use of the set_time_limit(int seconds) enables us to extend the execution time of a php script. The default limit is 30 seconds.
98) Is it possible to destroy a cookie?
Yes, it is possible by setting the cookie with a past expiration time.
99) What is the default session time in php?
The default session time in php is until closing of browser
100) Is it possible to use COM component in PHP?
Yes, it’s possible to integrate (Distributed) Component Object Model components ((D)COM) in PHP scripts which is provided as a framework.