The document discusses PHP, an open-source scripting language commonly used for web development. It can be embedded into HTML pages and is used to dynamically generate webpage content. PHP code is executed on the server and generates HTML that is sent to the browser. The document also discusses using XAMPP, a free and open-source cross-platform web server solution stack, to install and run PHP, MySQL, and Apache on your local computer for testing websites.
Introduction to JavaScript course. The course was updated in 2014-15.
Will allow you to understand what is JavaScript, what's it history and how you can use it.
The set of slides "Introduction to jQuery" is a follow up - which would allow the reader to have a basic understanding across JavaScript and jQuery.
Introduction to JavaScript course. The course was updated in 2014-15.
Will allow you to understand what is JavaScript, what's it history and how you can use it.
The set of slides "Introduction to jQuery" is a follow up - which would allow the reader to have a basic understanding across JavaScript and jQuery.
PHP stands for “PHP: Hypertext Preprocessor”. It is very good for creating dynamic content. PHP is a widely-used, free, and efficient alternative to competitors such as Microsoft's ASP.
We are covering following topics:
If...Else...Elseif Statements: if statement executes some code if one condition is true.
Switch Statement: Switch Statement tests a variable against a series of values.
For Loop: For loop executes a block of code a specified number of times.
While Loop: While loop executes a block of code as long as the specified condition is true.
Do…While Loop: Do...While loop will always execute the block of code once, it will then check the condition, and repeat the loop while the specified condition is true.
In JavaScript, almost "everything" is an object.
-Booleans can be objects (if defined with the new keyword)
-Numbers can be objects (if defined with the new keyword)
-Strings can be objects (if defined with the new keyword)
-Dates are always objects
-Maths are always objects
-Regular expressions are always objects
-Arrays are always objects
-Functions are always objects
-Objects are always objects
Loops execute a block of code a specified number of times, or while a specified condition is true.
Often when you write code, you want the same block of code to run over and over again in a row. Instead of adding several almost equal lines in a script we can use loops to perform a task like this.
In PHP, we have the following looping statements:
while - loops through a block of code while a specified condition is true
do...while - loops through a block of code once, and then repeats the loop as long as a specified condition is true
for - loops through a block of code a specified number of times
foreach - loops through a block of code for each element in an array
PHP stands for “PHP: Hypertext Preprocessor”. It is very good for creating dynamic content. PHP is a widely-used, free, and efficient alternative to competitors such as Microsoft's ASP.
We are covering following topics:
If...Else...Elseif Statements: if statement executes some code if one condition is true.
Switch Statement: Switch Statement tests a variable against a series of values.
For Loop: For loop executes a block of code a specified number of times.
While Loop: While loop executes a block of code as long as the specified condition is true.
Do…While Loop: Do...While loop will always execute the block of code once, it will then check the condition, and repeat the loop while the specified condition is true.
In JavaScript, almost "everything" is an object.
-Booleans can be objects (if defined with the new keyword)
-Numbers can be objects (if defined with the new keyword)
-Strings can be objects (if defined with the new keyword)
-Dates are always objects
-Maths are always objects
-Regular expressions are always objects
-Arrays are always objects
-Functions are always objects
-Objects are always objects
Loops execute a block of code a specified number of times, or while a specified condition is true.
Often when you write code, you want the same block of code to run over and over again in a row. Instead of adding several almost equal lines in a script we can use loops to perform a task like this.
In PHP, we have the following looping statements:
while - loops through a block of code while a specified condition is true
do...while - loops through a block of code once, and then repeats the loop as long as a specified condition is true
for - loops through a block of code a specified number of times
foreach - loops through a block of code for each element in an array
An Introduction to Websphere sMash for PHP Programmersjphl
IBM® WebSphere® sMash is an agile Web application platform for developing and running modern Web applications. It introduces a simple environment for creating, assembling and running applications based on popular Web technologies.
This presentation was delivered at the Dutch PHP Conference 2009. It shows how the PHP support in sMash can be used to easily integrate with Java assets.
For more information, see http://projectzero.org
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
2. What is it?
PHP is a scripting language commonly used on web
servers.
Stands for “PHP: Hypertext Preprocessor”
Open source
Embedded code
Comparable with ASP
Multiple operating systems/web servers
3. More About PHP
PHP is free software released under the PHP License.
PHP typically runs on a web server that takes PHP as
input and gives out HTML pages as output.
PHP is installed on more than 20 million websites and
1 million web servers.
PHP has a syntax similar to C and Java.
The current version of PHP is 5.2.x.
4. What can it do?
Dynamic generation of web-page content
Database interaction
Processing of user supplied data
Email
File handling
Text processing
Network interaction
And more…
5. Brief History of PHP
PHP (PHP: Hypertext Preprocessor) was created by Rasmus Lerdorf in
1994. It was initially developed for HTTP usage logging and server-side
form generation in Unix.
PHP 2 (1995) transformed the language into a Server-side embedded
scripting language. Added database support, file
uploads, variables, arrays, recursive
functions, conditionals, iteration, regular expressions, etc.
PHP 3 (1998) added support for ODBC data sources, multiple platform
support, email protocols (SNMP,IMAP), and new parser written by
Zeev Suraski and Andi Gutmans .
6. Brief History of PHP
PHP 4 (2000) became an independent component of the web server for
added efficiency. The parser was renamed the Zend Engine. Many
security features were added.
PHP 5 (2004) adds Zend Engine II with object oriented
programming, robust XML support using the libxml2 library, SOAP
extension for interoperability with Web Services, SQLite has been
bundled with PHP
As of August 2004, PHP is used on 16,946,328 Domains, 1,348,793 IP
Addresses http://www.php.net/usage.php This is roughly 32% of all
domains on the web.
7. Fundamentals
PHP is embedded within xhtml pages within the tags:
<?php … ?>
The short version of these tags can also be used: <? …
?>
Each line of PHP is terminated, like MySQL, with a
semi-colon.
9. Features of PHP
Performance
Relatively fast for an interpreted language.
Database Connectivity
Support for MySQL, Oracle, dbm, DB2, PostgreSQL
Can connect to any database which provides an ODBC
driver (Open Database Connectivity Standard) – e.g. MS
Access.
10. Features of PHP
Existing Libraries
PHP was originally designed for web use – lots of
functions for common web-development tasks (e.g.
Sending email, XML parsing, etc.)
Portability
Supported on Windows, Mac OS X, other Unix-like
systems (e.g. Linux).
11. Features of PHP
Object-Oriented Programming
Similar syntax and features as C++ and Java –
inheritance, attribute visibility
(private, protected), abstract
classes/methods, constructors and destructors, etc.
Popularity
As a result, lots of documentation, books, and web
tutorials.
12. PHP Usage
Server-Side Scripting Language
Must have a web server and the PHP interpreter
installed.
PHP interpreter processes pages before they are served
to clients.
15. About MySQL
GNU Free, open-source, multi-platform
Implements the standard SQL language
Relational DBMS
Written in C and C++
Uses MyISAM B-tree disk tables
Uses in-memory hash tables for temporary tables
16. Building On MySQL
What languages can we use for building an application on
MySQL?
ODBC Connector
JDBC Connector
.NET Connector
Web scripting languages
PHP, ASP, JSP
17. Uses of PHP and MySQL
Anything in a MySQL database can be viewed on a
webpage
Any information which can be captured from a website can
be stored into a database
18. Connecting to MySQL from PHP
/* Connection */
$username = ‘user’; // username
$password = ’password'; // password
$webhost = 'localhost'; // host (localhost or something on a web
server)
$db = ’test'; // the database
$dbc = mysql_connect($webhost, $username, $password) or
die("<p>Could not connect: <i>" . mysql_error());
@mysql_select_db($db) or die("<p>Could not find database - $db -
<i>" . mysql_error() . "</i>");
19. MySQL is Built Into PHP
There are function calls to connect to a MySQL
server, send SQL commands, and retrieve data from
the server
22. XAMPP – What’s the tool?
XAMPP (pronounced as ZAMP) is a small and light Apache
distribution containing the most common web
development technologies in a single package.
Acronym for:
X- Read as "cross", meaning cross-platform)
A-Apache HTTP Server
M-MySQL
P-PHP
P-Perl
23. Features of XAMPP
• Ideal tool for developing and testing applications in PHP &
MySQL.
• Takes less time than installing each of its components
separately.
• Multiple instances of XAMPP can exist on a single
computer.
• Allow website designers and programmers to test their
work on their own computers without any access to the
Internet
• XAMPP also provides support for creating and
manipulating databases in MySQL and SQLite among
others.
24. How to install ?
Go to http://www.apachefriends.org/en/xampp.html
Versions available for Linux, Windows, Solaris, Mac OS X
26. Types of XAMPP
WAMP - Windows
MAMP – Mac OS X
SAMP - Solaris
LAMP - LINUX
27. XAMPP Configuration
Starting :
• To start XAMPP simply call this command :
• You should now see something like this on your screen :
• If you get any error messages please take a look at the
Linux FAQ.
/opt/lampp/lampp start
Starting XAMPP 1.7.4...
LAMPP: Starting Apache...
LAMPP: Starting MySQL...
LAMPP started.
28. XAMPP Configuration
Stopping :
• To stop XAMPP simply call this command :
• You should now see something like this on your screen :
• XAMPP for Linux is now stopped.
Starting XAMPP 1.7.4...
LAMPP: Stopping Apache...
LAMPP: Stopping MySQL...
LAMPP stoped.
/opt/lampp/lampp stop
29. Recommended Texts for Learning PHP
Larry Ullman’s books from the Visual Quickpro series
PHP & MySQL for Dummies
Beginning PHP 5 and MySQL: From Novice to
Professional by W. Jason Gilmore
(This is more advanced and dense than the others, but
great to read once you’ve finished the easier books. One
of the best definition/description of object oriented
programming I’ve read)
31. Resources
Xampp
Combines an Apache web server, PHP, and MySQL into
one simple installation service.
Very little configuration required by the user to get an
initial system up and running.
http://www.apachefriends.org/en/xampp.html