Tag Archives: php

CentOS 5.7 Upgrade PHP 5.1 to 5.3

CentOS 5.7 Upgrade PHP 5.1 to 5.3

The MediaCP requires PHP 5.2 or higher to operate, with CentOS 5.7 the default installed PHP package is PHP 5.1.

 

You will need to upgrade your version of php before installing our product.

 

–Please note this applies to LAMPP (Linux, Apache, MySQL & PHP) installations only —
If you are using cPanel or another web hosting control panel, you will need to consult appropriate documentation to upgrade.

 

  1. Remove current PHP package:
    # yum remove php php-common
  2. Install php53 packages
    # yum install php53 php53-mysql php53-gd php53-curl

  3. Restart apache for changes to take affect.
    # /etc/init.d/httpd restart
  4. You can check this worked by typing in:
    # php -v

    This should return something like:
    PHP 5.3.3 (cli) (built: Dec 10 2013 22:12:52)
    Copyright (c) 1997-2010 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

Php, מבוא

מבוא לשפה

PHP, השפה – מהי?

PHP, היא שפת תיכנות לאינטרנט, היא בנויה ע"י מנוע, שתפקידו הוא להריץ את הסקריפטים תוך כדי שימוש במשאבים רבים, כמו למשל מסד הנתונים.
PHP מטפלת בטפסים, במסדי נתונים כמו למשל mySQL, ובמידע שנשלח מן המשתמשים.
כמו שאנחנו רואים, התפקיד של PHP בעצם הוא לנתח מידע, וליצור פלט או יותר בהתאם.

PHP – השפה, והמפתח הגרמני, "רזמוס לרדורף".

PHP היא שפת תיכנות לתכנות יישומי אינטרנט בצד השרת ולא על צד לקוח כמו C\C++ וכדומה, במחשב השרת יש מפרש, שתפקידו להריץ תסריטים בPHP תוך כדי שימוש במשאבי מחשב השרת כמו למשל מסדי נתונים.
כאשר המשתמש(clients) פותח את הדפדפן, כל הנתונים מתקבלים אל הדפדפן מהשרת.
השרת מזהה את הקובץ המבוקש, מפענח אותו, ולאחר מכן, יוצר פלט HTML רגיל, אותו שולח אל הדפדפן, ישירות דרך האינטרנט אל המשתמש.
הדפדפן לא מקבל קוד PHP ישירות, אלא שהמשתמש רואה פלט HTML רגיל, ולכן, התכונה הזאת מעניקה יתרון עצום בשמירה על פרטיות וסודיות התוכנית.

באמצעות PHP, ניתן ליצור דפי "ווב" (web) דינאמים בשילוב נתונים מן בסיסי הנתונים(datebases) ולטפל בטפסים ונתונים שנשלחים ע"י המשתמשים.
התפקיד של PHP, הוא לנתח את המידע, וליצור פלט בהתאם.
PHP אינה מתפלת במידע בצד לקוח כלומר בדפדפן, בהתאם לקח, היא מייצרת תוכן,פלט HTML, או כל אובייקט אחר ושולחת אותם אל הדפדפן, אך היא אינה מפענחת אותם, זוהי מלאכתו של הדפדפן בלבד.
מבחינה פונקציונלית, PHP מהווה תחליף לCGI שקדם לה. תפקידה של השפה CGI הינה לנתח מידע תוך שימוש במשאבי מחשב השרת ולהוציא פלט בהתאם, בדומה לPHP.
לרוב קבצי CGI נכתבים בשפת C, וגם בPERL, שהן שפות תיכנות צד לקוח ולא צד שרת שלא נועדו להריץ יישומי אינטרנט.
ולכן קצת מסובך לבצע משימה זאת באמצעותן.
PHP הינה שפה שמתבססת על עקרונותיה של שפות צד הלקוח C, ו PERL.

רזמוס לרדורף, האיש הגרמני, שהמציא את שפת הPersonal Home Page tools)PHP) או FI (Forms Interpreter) שרעיונה ההתחלתי היה בעיקר טיפול בטפסים.
אז איך הכל התחיל?
רזמוס לרדורף, רצה חיפש דרך קלה להכניס את נתוני קורות חייו דרך האינטרנט באמצעות מפענח שפה שירוץ בצד השרת.
בשנת 1995 הוא יצר את מפענח השפה PHP\FI, ולרדורף פיתח גם את הגירסה השנייהPHP/FI 2) )
השפה שלרדורף פיתח הייתה מסורבלת ושונה מן השפה המוכרת לנו כיום, זאב סורסקי ואנדי גוטמנס, שני מפתחים ישראלים מהטכניון, פיתחו את מהיסוד את השפה PHP, המוכרת לנו כיום והעניקו לשפה את הפירוש – PHP Hypertext Preprocessor.
סורסקי וגוטמנס החליטו להוציא לאור את הגרסה הבאה (PHP 3) כהמשך לגירסתו של לרדורף שהיא הייתה הגרסה הראשונה שהייתה מלאה, תמכה ואפשרה תכנות מונחה עצמים, מסדי נתונים, ועוד פרוטוקולים שונים והיא השפה המוכרת לנו.

PHP – האם יש בחירה אחרת? ולמי מיועדת השפה?

ישנן מגוון שפות נוספות חוץ מPHP, כגון ASP, וJSP, לכן, מדוע דווקא PHP ?

  • השפה קלה מאוד להבנה וללמידה, והיא דומה מאוד לשפת C, ומי שיודע את שפת C יוכל ללמוד אותה בקלות רבה.
  • PHP היא שפת קוד פתוח "open source" כלומר, שכל אחד יכול לפתח את השפה, וכל זה בחינם.
  • PHP הינה השפה הראשונה שפותחה, עוד לפני ASP, JSP וכדומה.
  • PHP היא שפת כחול לבן ולכן תומכת בעברית בצורה מלאה.

PHP מיועדת לכל אחד ואחד שמעוניין להקים אתר דינאמי שמשתמש בבסיסי נתונים, ושמספק אבטחת מידע יעילה.
PHP הינה מתאימה יותר לאנשים שיודעים את השפות C, ו\או PERL, כמובן, שPHP הינה שפה שמיועדת גם לכל אחד ואחד שגם לא יודע את שפות צד הלקוח הנ"ל, ויכול להתחיל גם ללא ידע בשפת תכנות אחרת, עם ידע בHTML.

מדריך | PHP – מערכים

מערכים – Arrays

כל מערך מורכב מפונקציה, הכוללת בתוכה את שם התצוגה [המשתנה], והתוכן, לרוב מתכנתים משתמשים במערכת על מנת לבנות קבצי שפה [lang.php].

כשתפתחו קובץ שפה, לרוב תראו משהו בסגנון:

PHP קוד:
<?Php
$lang 
= Array(

"txt1" => "Your txt1 content",
"txt2" => "Your txt2 content",
......................
);
?>

ובעצם על מנת להדפיס את תוכן המערך,

PHP קוד:
<?Php
print $lang['txt1']; // will print 'Your txt1 content'
?>
בעצם כמו שאתם רואים, זה פשוט וקל, ומסודר יותר.

תחום הגדרת מערך

איך מגדירים מערך?

על מנת להגדיר מערך, נצטרך שני פרמטרים, שם, ותוכן, את שניהם נכניס לתוך הפונקצייה array.

לאחר שנסיים לבנות את המערך, הוא יוצג בצורה הבאה:

$yourVar['YourArray'];

אנו נצטרך להגדיר את YourArray, ולהגדיר לו תוכן מסויים.

הגדרת שורה, מתבצעת באופן הבא:

PHP קוד:
"some Value" => "some Content"
על מנת להוסיף עוד ועוד שורות, רק נצטרך למקם פסיק,

PHP קוד:
"some Value" => "some Content",
"some Other Value" => "some Other Content"
כל מה שלמדנו עד כה, נכנס הישר לתוך הפונקצייה Array(); באופן הבא:

PHP קוד:
$array = array(

"my_value_1" => "hello world!",
"my_value_2" => "hello moon!"

);

ועל מנת להדפיס את התוכן, עלינו להציב פונקציית הדפסה רגילה [echo,print], כלומר:

PHP קוד:
<?Php
$array 
= array(

"my_value_1" => "hello world!",
"my_value_2" => "hello moon!"

);

print $array['my_value_1']."<br />".$array['my_value_2']; /*

will print:

hello world!
hello moon!

*/
?>

מדריך | PHP – הגנה נגד הזרקות כתובת

רבותי שלום רב!,
במדריך זה החלטתי לכתוב על שיטות למניעת הזרקות כתובת והסבר כללי על הזרקות.
את המדריך אחלק לשלושה נושאי אם: מהם הזרקות?, כיצד פועלות ההזרקות הכתובת? וכיצד נמנע הזרקות כתובת?.

מהם הזרקות?

הזרקות הינם זריקת תוכן מסויים לתוך משתנה.
היעד שלהם הוא לשטול מידע שיגרום לבאג/תוכן שגוי במערכת.

כיצד פועלות ההזרקות הכתובת?

ההזרקות הללו פועלות ע"י שליחת תוכן אחר לתוך שורת הכתובת.

למשל נתונה הכתובת:

קוד:
index.php?act=addpoint&add=500

ובמידה והקובץ אינו מוגן מהזרקות נוכל לשנות ערכים שיגרמו לבעיות.
ותוזרק הכתובת הבאה:

קוד:
index.php?act=addpoint&add=50000.464;?>

דבר אשר יגרום לבעיות.

כיצד נמנע ההזרקות כתובת?

מניעת ההזרקות כתובת אינה פעולה קשה במיוחד, לפעמים חשוב לחשוב על שיטת הצפנה אשר תעזור לנו למנוע הזרקה.

הצפנת נתונים.
במידה ונרצה ליצור משחק, שיהיה כמעיין חפש את המטמון. וניצור לחצן שיוסיף נקודות למשתמש כפרס ע"י לחיצה במקום מסוים בפורום, ושכל מקום יביא מספר שונה של נקודות; אך לא נרצה לתת מספר קטלוגי לכל מקום, כך שיביא נקודות שונות.
מה נעשה?, נצפין בשיטת הצפנה מסוימת הידועה רק לנו את מספר הנקודות, או נצפין בכמה הצפנות !.

מניעת הזריקות למשתנה.
כפי שידוע לנו במידה ולא נמנע את הזריקות הנתונים מהכתובת ייובאו לתוך משתנים.
כדוגמא זו:

ציטוט:
index.php?act=addpoint&add=500

בעצם שורת כתובת זו תבצע את השורות הבאות.

PHP קוד:
<?php
$act 
"addpoint";
$add 500;
?>

כלומר, הנתונים יוזנו לתוך המשתנה(addpoint יוזן למשתנה act, ו 500 יוזן למשתנה add).

כיצד נמנע זואת?
נוכל למנוע זואת ע"י הזנה שזוהיא שליחת GET.
ונבנה את הקוד הבא:

PHP קוד:
<?php
$action 
$_GET[act];
$nadd $_GET[add];
?>

* אפשר לכתוב בתוך ה [] עם גרשיים קטנים או בלעדיים, זה עניין של נוחות.

ניפוי באגים והקצבת מספר ערכים אפשריים.

במידה ואנו מעוניינים ליצור את כל הפעולות בקובץ אחד, כלומר ליצור action.
כיצד ניצור זואת?, ניצור זואת ע"י פונקציית ה Switch.

לדוגמא:

PHP קוד:
<?php
switch($_GET[act]) {
case 
"addpoint":
include(
"include/addpoint.php");
break;
case 
"points":
include(
"include/points.php");
break;
case 
"main":
include(
"include/main");
break;
default:
include(
"include/main.php");
}
?>

כאן אנו מזינים שיש אפשרות לact להיות שלושה ערכים(addpoint, points, main), ואם לא הוגדר ערך תגדיר תעשה כך וכך.
כמובן שנוכל להיות מתוחכמים יותר ע"י לולאה שיוצר את ה case ע"פ הקבצים הקיימים במחיצת "include".

למידע נוסף אודות פונקצייה זואת בקרו ביחידה המסבירה על פונקציית Switch במדריך הרישמי של Php:
http://www.Php.Net/Switch

מדריך | PHP – שיטת ההצפנה Base64 (הצפנה דו כיוונית) ושימושיה

שלום רב!,
במדריך זה החלטתי ללמד על ההצפנה הדו כיוונית הנפוצה ביותר כיום, Base64.
החלטתי לחלק את המדריך לארבעה נושאי אם: "מהי הצפנה דו כיוונית?", "כיצד נצפין מידע?", "כיצד נשחזר מידע?" ו"מהם שימושי הBase64?".

מהי הצפנה דו כיוונית?

הצפנה דו כיוונית היא הצפנה אשר בה אפשר להצפין קוד(לכתוב אותו בשפה שונה), ולאחר מכן לשחזר אותו, להבדיל מהצפנה חד כיוונית(MD5 לדוגמא) שבה אפשר לקחת נתון ולבדוק אם הנתון לאחר הצפנה שווה להצפנה המקורית(ראה מידע נוסף מדריך אודות ה MD5).
לדוגמא:
הצפנו בהצפנה דו כיוונית את המילה "PHP", ונקבל את התוצאה הבאה:

קוד:
UEhQ

לאחר מכן ננסה לשחזר את הקוד ע"י פונקצייה הפוכה ונקבל:

קוד:
PHP

ובמדריך זה אנו נלמד להצפין מידע בשיטת ה Base64.

כיצד נצפין מידע?

על מנת להצפין מידע עלינו להשתמש בפונקצייה מסוג encode(פונקציית הצפנה), בBase64 אנו נשתמש בפונקצייה הבאה: base64_encode() .

תבנית הפונקצייה:

PHP קוד:
<?php
base64_encode
(x);
?>

לדוגמא:

PHP קוד:
<?php
$code 
"Base64 Guide - By Ikki";
$encode base64_encode($code);
echo 
$encode;
?>

יחזיר לנו:

ציטוט:
QmFzZTY0
כיצד נשחזר מידע?

על מנת לשחזר מידע עלינו להשתמש בפונקצייה מסוג decode(פונקציית שיחזור), בBase64 אנו נשתמש בפונקצייה הבאה: base64_decode() .

תבנית הפונקצייה:

PHP קוד:
<?php
base64_encode
(date);
?>

לדוגמא:

PHP קוד:
<?php
$code 
"QmFzZTY0";
$decode base64_decode($code);
echo 
$decode;
?>

יחזיר לנו:

ציטוט:
Base64 Guide – By Ikki
מהם שימושי ה Base64?

בBase64 נוכל להשתמש בשימושים רבים שמצריכים שיחזור.
למשל אם נרצה להצפין את הקוד, כך שרק מי שמכיר את הקוד ידע שצריך לשחזר כדי לערוך, וכך נמנע שינויים בקוד.
נצפין בBase64 ונשחזר בעמוד השיחזור.

או למשל אם נרצה להצפין מידע המועבר ע"י הכתובת, לדוגמא ניצור טופס שבו יוזן אוטמטית כתובת השליחה ע"י הכתובת, ונרצה שישנו זואת רק ע"י מחולל כתובות.
ניצור הצפנה למשתנה זה, ונשחזר.

לסיכום, לשיטת ההצפנה Base64 ישנם שימושים רבים!.

מדריך | יצירת תאריך בעברית עם PHP

שלום,
במדריך הזה מה שנעשה זה בעצם לבדוק מה הפלט של הפונקציה date של php וככה נתאים את זה לתאריך שאנחנו רוצים.
טוב ועכשיו נתחיל.
1. ניצור משתנה שבוא יהיו הנתונים שאנחנו צריכים מdate

PHP קוד:
$day=date('w');
$month=date('n');

אפשר לעשות את זה בצורות שונות אבל הדרך הזאת הכי נוחה (בשבילי לפחות).
2. נבדוק מה הפלט של date בשני המקרים ונכניס את החודש\יום בהתאמה.

PHP קוד:
switch($day){
case 
0:
$day="ראשון";
break;
case 
1:
$day="שני";
break;
...
case 
6:
$day="שבת";
break;
}
switch(
$month){
case 
1:
$month="ינואר";
break;
case 
2:
$month="פברואר";
break;
...
case 
12:
$month="דצמבר";
break;
}

וזהו סיימנו
רגע מה עם תאריך עברי?
את התאריך העברי אפשר לעשות כמעט אותו הדבר. החודשים העבריים יהיו אותו הדבר חוץ מבשנה מעוברת (בודקים עם date('L') כאשר הפונקציה מחזירה 0 לשנה רגילה ו1 לשנה מעוברת). את הימים נעשה בצורה הבאה:

PHP קוד:
    $he_day    =    date('j');
switch(
$he_day){
case 
1:
$he_day="א";
break;
case 
2:
$he_day="ב";
break;
...
}

יצירת תאריך בעברית עם PHP

מדריך | התקנת php 5

מדריך | התקנת php 5 להתקין php 5 על שרת

******שימו לב שעלולות להיווצר בעיות בניסיון להתקין PHP 5 ******
לכן האחריות היא עליכם בלבד
אתם מוזמנים לנסות ובמידה ותתקלו באיזשהי תקלה תרשמו פה ואני יעזור לכם
ההתקנה מתאימה לCENTOS FEDORA FREEBSD ורוב המערכות שמבוססות על RH

התקנת PHP 5 לשרתים בעלי פאנל DA :

cd /usr/local/directadmin/customapache
rm -fr build
wget http://files.directadmin.com/services/customapache/build
chmod 755 build
./build update
./build clean

wget http://www.php.net/get/php-5.1.4.tar.gz/from/this/mirror
perl -pi -e 's/PHP_VER=4.4.2/PHP_VER=5.1.4/' build
./build php
cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.safe.copy

perl -pi -e 's/LoadModule php4_module
/usr/lib/apache/libphp4.so/#LoadModule php4_module
/usr/lib/apache/libphp4.so/' /etc/httpd/conf/httpd.conf
perl -pi -e 's/AddType application/x-httpd-php .inc .php .php4 .php3
.phtml/AddType application/x-httpd-php .inc .php .php5 .php4 .php3
.phtml/' /etc/httpd/conf/httpd.conf

אחר כך עורכים

nano /etc/httpd/conf/httpd.conf

מחפשים את זה (CTRL + W ):

<IfModule mod_php4.c>
AddType application/x-httpd-php .inc .php .php4 .php3 .phtml
AddType application/x-httpd-php-source .phps
</IfModule>

משנים לזה :

<IfModule mod_php5.c>
AddType application/x-httpd-php .inc .php .php5 .php4 .php3 .phtml
AddType application/x-httpd-php-source .phps
</IfModule>
/sbin/service httpd restart

זהו סיימנו להתקין

כל זכויות שמורות לחברת סרב וואב הוסטינג עסקים .
בניית אתרים , איחסון אתרים , שרתי רדיו , שרתי משחק , עיצוב אתרים , מערכות ניהול תוכן cms , רישום דומין , בוט שידור , שרת רדיו , שם מתחם , רדיו באיטרנט