<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8036010337553090597</id><updated>2024-09-01T06:23:11.188-07:00</updated><category term="PHP"/><title type='text'>Wavely</title><subtitle type='html'>שיטות וטיפים לתכנות פורה.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://wavely-israel.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8036010337553090597/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://wavely-israel.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>משה</name><uri>http://www.blogger.com/profile/10793350320062073597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8036010337553090597.post-8469849609463370979</id><published>2010-06-23T08:58:00.001-07:00</published><updated>2010-06-24T23:58:04.542-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="PHP"/><title type='text'>טיפים חשובים לביצוע שאילתות MySQL</title><content type='html'>&lt;div dir=&quot;rtl&quot; style=&quot;text-align: right;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;rtl&quot; style=&quot;text-align: right;&quot; trbidi=&quot;on&quot;&gt;
&lt;div dir=&quot;rtl&quot; style=&quot;text-align: right;&quot; trbidi=&quot;on&quot;&gt;
במידה ואתם כבר יודעים לבצע שאילתות SQL עם PHP בצורה סבירה (אבטחה, כתיבה נכונה וכו&#39;), אתם מוזמנים לקרוא כמה טיפים שיקלו עליכם בצורה משמעותית.&lt;br /&gt;
&lt;br /&gt;
ניתן לחלק את הביצוע של שאילתות SQL לשתי שיטות: ידנית ואוטומטית.&lt;br /&gt;
&lt;div&gt;
&lt;b&gt;בשיטה הידנית&lt;/b&gt;&amp;nbsp;צריך לאבטח כל אחד ואחד מהמשתנים לפני הכנסתם לשאילתה. הנה דוגמא:&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre class=&quot;sh_php&quot;&gt;// Preparing the query
$query = sprintf(&quot;SELECT * FROM users WHERE username = &#39;%s&#39; AND password = &#39;%s&#39;&quot;,
 mysql_real_escape_string($username),
 mysql_real_escape_string($password));

// Executing the query
$result = mysql_query($query);&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
השיטה הזו מיותרת, אך ב-PHP כמו במכוניות, תמיד יש כאלו שמעדיפים ידנית על אוטומטית.&lt;br /&gt;
אבל! זה בסה&quot;כ טיפ. אז הנה לכם &lt;b&gt;השיטה האוטומטית&lt;/b&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sh_php&quot;&gt;// Executing the query (prepared automatically)
$result = safeQuery(&quot;SELECT * FROM users WHERE username = &#39;%s&#39; AND password = &#39;%s&#39;&quot;, $username, $password);
&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
אם תשימו לב, תוכלו לראות שהפונקציה &lt;b&gt;safeQuery&lt;/b&gt; מכינה את השאילתה אוטומטית ולאחר מכן מבצעת אותה.
ליתר דיוק אלו הצעדים שהיא מבצעת: אבטוח המשתנים, מיקום המשתנים בשאילתה וביצוע השאילה.&lt;br /&gt;
אז הנה הפונקציה &lt;b&gt;שאתם חייבים&lt;/b&gt; שתהיה לכם על מנת להשתמש בשיטה האוטומטית:&lt;br /&gt;
&lt;br /&gt;
&lt;pre class=&quot;sh_php&quot;&gt;function safeQuery($query) {
 $args = func_get_args();
 $size = count($args);
 for($i = 1; $i &amp;lt; $size; $i++) {
  if(!is_numeric($args[$i])) {
   $safeArgs[] = $this-&amp;gt;escape($args[$i]);
  }
 }
 return mysql_query(vsprintf($query, $safeArgs));
}&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;b&gt;הערה:&lt;/b&gt;&lt;i&gt;&amp;nbsp;תמיד תוכלו לשנות את שם הפונקציות שאני מביא, או את סגנון הכתיבה שלהם. זה לא יפריע בשום צורה לביצוע הקוד.&lt;/i&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://wavely-israel.blogspot.com/feeds/8469849609463370979/comments/default' title='תגובות לפרסום'/><link rel='replies' type='text/html' href='http://wavely-israel.blogspot.com/2010/06/blog-post_23.html#comment-form' title='0 תגובות'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8036010337553090597/posts/default/8469849609463370979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8036010337553090597/posts/default/8469849609463370979'/><link rel='alternate' type='text/html' href='http://wavely-israel.blogspot.com/2010/06/blog-post_23.html' title='טיפים חשובים לביצוע שאילתות MySQL'/><author><name>משה</name><uri>http://www.blogger.com/profile/10793350320062073597</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>