<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.3" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Software related blog &#187; php</title>
	<link>http://www.softrelated.com</link>
	<description>...un blog soft despre soft si nu numai...</description>
	<pubDate>Tue, 15 Apr 2008 12:13:14 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
	<language>en</language>
			<item>
		<title>CodeIgniter - un framework adevarat</title>
		<link>http://www.softrelated.com/codeigniter-un-framework-adevarat.html</link>
		<comments>http://www.softrelated.com/codeigniter-un-framework-adevarat.html#comments</comments>
		<pubDate>Sun, 25 Nov 2007 08:30:31 +0000</pubDate>
		<dc:creator>belial</dc:creator>
		
		<category><![CDATA[php]]></category>

		<category><![CDATA[codeigniter]]></category>

		<category><![CDATA[framework]]></category>

		<guid isPermaLink="false">http://www.softrelated.com/codeigniter-un-framework-adevarat.html</guid>
		<description><![CDATA[    Hai ca e timpul sa abordez si acest subiect (trebuie sa recunosc ca in ultimul timp m-am tot gandit daca merita sa scriu sau nu despre asta pe blog). Probabil unii se intreaba: &#8220;Ce este acest CodeIgniter ?&#8221;. Nu-i nimic altceva decat o aplicatie construita pe ideea de framework cu care [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.gamelink.ro/imagehost/upload/ci_logo_flame.jpg" alt="CodeIgniter logo" align="left" height="164" width="150" />    Hai ca e timpul sa abordez si acest subiect (trebuie sa recunosc ca in ultimul timp m-am tot gandit daca merita sa scriu sau nu despre asta pe blog). Probabil unii se intreaba: &#8220;Ce este acest CodeIgniter ?&#8221;. Nu-i nimic altceva decat o aplicatie construita pe ideea de framework cu care poti dezvolta niste aplicatii extrem de complexe. Avantajul principal este ca nu esti nevoit sa faci  &#8220;hardcoding&#8221; la fiecare modul in parte ci doar sa-l apelezei in maniera in care ti se potriveste perfect, asadar poti programa o aplicatie in cel mult 20-30 de linii folosind apeluri personalizate ale unor functii, programare care altfel ti-ar fi luat sute de linii si ti-ar fi dat multa bataie de cap. Ideea e foarte simpla: nu mai esti nevoit sa scrii tu zeci de biblioteci pe care sa le incluzi mai apoi in programul tau, doar sa le apelezi.  Pentru unii randurile de mai sus nu reprezinta o noutate dar, cum am spus-o mai sus, am incercat sa ofer o explicatie si pentru cei cei care sunt neinitiati in programarea orientata pe frame-uri. Schema de mai jos poate va va ajuta sa intelegeti mai multe.</p>
<p><img src="http://www.gamelink.ro/imagehost/upload/_appflowchart.gif" alt="Application flow chart" align="absmiddle" height="205" width="450" /></p>
<p>De ce CodeIgntier ? Pentru ca este Open Source si pentru ca este mult mai usor de folosit decat celelalte framework-uri gen Cake sau Symfony (nu neaparat mai bun, dar asta e o alta discutie deja).</p>
<p>In acest articol nu veti gasi nici un tutorial pe baza caruia veti putea sa va dezvoltati vreo aplicatie sau mai stiu eu ce altceva decat impresia mea cu care am ramas dupa ce am facut incursiunea in frameworking si eventual cateva&#8221;poante&#8221;.</p>
<p>Instalarea acestui framework este una dintre cele mai simple. Nu trebuie dacat sa despachetati arhiva intr-un director care va fi supus apelarii http. Asadar aveti posibilitatea de a-l folosi pe localhost. Va sugerez aplicatia wamp5 in acest scop. Puteti gasi <a href="http://www.softrelated.com/instalareconfigurare-localhost-pe-windows.html" title="aici" target="_blank">aici</a> un <a href="http://www.softrelated.com/instalareconfigurare-localhost-pe-windows.html" title="mic ghid" target="_blank">mic ghid</a> despre cum puteti s-o instalalti rapid si usor. Directorul despre care va vorbeam mai sus, in cazul meu se numeste &#8220;www&#8221; unde am despachetat CodeIgniter, asadar am: &#8220;www/CodeIgniter&#8221;. Urmatorul pas va fi editarea fisierului &#8220;config.php&#8221; pe care-l vom gasi aici: &#8220;\system\application\config\&#8221;. Pentru partea in care se lucreaza cu baza de date puteti folosi programul <a href="http://www.navicat.com/" title="Navicat" target="_blank">Navicat</a> despre aflati mai multe detalii <a href="http://www.softrelated.com/navicat-probabil-cel-mai-bun-mysql-gui.html" title="aici" target="_blank">aici</a>.</p>
<p>Pe linia 14 avem</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>14
</pre></td><td class="code"><pre class="php"><span style="color: #ff0000;">&quot;$config['base_url']    = &quot;</span><span style="color: #ff0000;">&quot;;</span></pre></td></tr></table></div>

<p>Vom inlocui linia cu</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>14
</pre></td><td class="code"><pre class="php"><span style="color: #0000ff;">$config</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'base_url'</span><span style="color: #66cc66;">&#93;</span>    = <span style="color: #ff0000;">&quot;http://localhost/CodeIgniter/index.php/&quot;</span>;</pre></td></tr></table></div>

<p>Pe linia 26 avem</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>26
</pre></td><td class="code"><pre class="php"><span style="color: #0000ff;">$config</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'index_page'</span><span style="color: #66cc66;">&#93;</span> = <span style="color: #ff0000;">&quot;index.php&quot;</span>;</pre></td></tr></table></div>

<p>Vom inlocui linia cu</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>26
</pre></td><td class="code"><pre class="php"><span style="color: #0000ff;">$config</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'index_page'</span><span style="color: #66cc66;">&#93;</span> = <span style="color: #ff0000;">&quot;&quot;</span>;</pre></td></tr></table></div>

<p>Facem cea din urma inlocuire datorita faptului ca in tutorialul video se foloseste o versiune mai veche a programului si s-a omis aceasta modificare, fara de care nu vom putea folosi functia <strong><em>scaffolding</em></strong>.</p>
<p>Un alt lucru interesant care l-am mai intalnit la CodeIgniter este acela ca poate fi folosit cu <em>php short tags</em>, functie care initial este dezactivata in wamp5 si pe care o puteti activa editand fisierul php.ini si cautand linia short_open_tag = off respectiv inlocuind <strong>off</strong> cu <strong>on</strong>.</p>
<p>Putin mai jos o lista cu principalele caracteristici ale lui CodeIgniter:<br />
<a class="spoiler_link_show" href="javascript:void(0)" onclick="wpSpoilerToggle(document.getElementById('id710683114'), this, 'show', 'hide')">show</a></p>
<div class="spoiler_div" id="id710683114" style="display:none">
<ul>
<li>Model-View-Controller Based System</li>
<li>PHP 4 Compatible</li>
<li>Extremely Light Weight</li>
<li>Full Featured database classes with support for several platforms.</li>
<li>Active Record Database Support</li>
<li>Form and Data Validation</li>
<li>Security and XSS Filtering</li>
<li>Session Management</li>
<li>Email Sending Class. Supports Attachments, HTML/Text email, multiple protocols (sendmail, SMTP, and Mail) and more.</li>
<li>Image Manipulation Library (cropping, resizing, rotating, etc.).  Supports GD, ImageMagick, and NetPBM</li>
<li>File Uploading Class</li>
<li>FTP Class</li>
<li>Localization</li>
<li>Pagination</li>
<li>Data Encryption</li>
<li>Benchmarking</li>
<li>Full Page Caching</li>
<li>Error Logging</li>
<li>Application Profiling</li>
<li>Scaffolding</li>
<li>Calendaring Class</li>
<li>User Agent Class</li>
<li>Zip Encoding Class</li>
<li>Template Engine Class</li>
<li>Trackback Class</li>
<li>XML-RPC Library</li>
<li>Unit Testing Class</li>
<li>Search-engine Friendly URLs</li>
<li>Flexible URI Routing</li>
<li>Support for Hooks, Class Extensions, and Plugins</li>
<li>Large library of &#8220;helper&#8221; functions</li>
</ul>
</div>
<p>Dupa cum v-am promis nu voi continua acest articol cu indicatii despre cum sa va dezvoltati prima aplicatie. Eu personal, am urmat tutorialul video si in cca. 23 minute am reusit sa-mi creez baza unui blog care foloseste framework-ul CodeIgniter. Probabil ca daca as fi petrecut mai mult timp as fi dezvoltat o versiune de blog personala. Iata ca, in cele din urma putem creea aplicatii mai mult sau mai putin complexe, script-uri pe care mai apoi sa le vindem ori sa le folosim pentru a ne face viata mai usoara. Posibilitatile sunt nenumarate insa ceea ce va pot spune este ca lucrurul cu framework-ul reprezinta viitorul in programare.</p>
<p>In final va invit sa vizitati <a href="http://codeigniter.com/" title="pagina oficiala" target="_blank">pagina oficiala</a> unde veti putea viziona doua tutoriale video care sunt mai mult decat bine-venite  si sa va descarcati o copie a aplicatiei <a href="http://codeigniter.com/download.php" title="CodeIgniter" target="_blank">CodeIgniter</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.softrelated.com/codeigniter-un-framework-adevarat.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Cum cream o baza de date MySQL</title>
		<link>http://www.softrelated.com/cum-cream-o-baza-de-date-mysql.html</link>
		<comments>http://www.softrelated.com/cum-cream-o-baza-de-date-mysql.html#comments</comments>
		<pubDate>Mon, 05 Nov 2007 16:39:41 +0000</pubDate>
		<dc:creator>belial</dc:creator>
		
		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[creare baza de date]]></category>

		<guid isPermaLink="false">http://www.softrelated.com/cum-cream-o-baza-de-date-mysql.html</guid>
		<description><![CDATA[
&#60;?php
mysql_connect&#40;&#34;localhost&#34;, &#34;root&#34;, &#34;parola&#34;&#41; or die&#40;mysql_error&#40;&#41;&#41;;
echo &#34;Conectare cu succes.&#34;;
mysql_create_db&#40;'test'&#41;;
$query = 'CREATE TABLE contact( '.
         'id INT NOT NULL AUTO_INCREMENT, '.
         'nume VARCHAR(20) NOT NULL, '.
         'mail VARCHAR(50) NOT NULL, '.
   [...]]]></description>
			<content:encoded><![CDATA[
<div class="wp_syntax"><div class="code"><pre class="php"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000066;">mysql_connect</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;localhost&quot;</span>, <span style="color: #ff0000;">&quot;root&quot;</span>, <span style="color: #ff0000;">&quot;parola&quot;</span><span style="color: #66cc66;">&#41;</span> or <span style="color: #000066;">die</span><span style="color: #66cc66;">&#40;</span><span style="color: #000066;">mysql_error</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Conectare cu succes.&quot;</span>;
<span style="color: #000066;">mysql_create_db</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'test'</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #0000ff;">$query</span> = <span style="color: #ff0000;">'CREATE TABLE contact( '</span>.
         <span style="color: #ff0000;">'id INT NOT NULL AUTO_INCREMENT, '</span>.
         <span style="color: #ff0000;">'nume VARCHAR(20) NOT NULL, '</span>.
         <span style="color: #ff0000;">'mail VARCHAR(50) NOT NULL, '</span>.
         <span style="color: #ff0000;">'subiect VARCHAR(30) NOT NULL, '</span>.
         <span style="color: #ff0000;">'mesaj TEXT NOT NULL, '</span>.
         <span style="color: #ff0000;">'PRIMARY KEY(id))'</span>;
<span style="color: #0000ff;">$result</span> = <span style="color: #000066;">mysql_query</span><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$query</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Uite asa ne-am creat o baza de date cu un tabel denumit &#8220;contact&#8221; cat se poate de banal care foloseste ca index key-ul cu numele &#8220;id&#8221; (folositor cand vreti sa executati o cautare, selectare mai migaloasa).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.softrelated.com/cum-cream-o-baza-de-date-mysql.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Cum ne conectam la o baza de date MySQL</title>
		<link>http://www.softrelated.com/cum-ne-conectam-la-o-baza-de-date-mysql.html</link>
		<comments>http://www.softrelated.com/cum-ne-conectam-la-o-baza-de-date-mysql.html#comments</comments>
		<pubDate>Sun, 04 Nov 2007 11:52:20 +0000</pubDate>
		<dc:creator>belial</dc:creator>
		
		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[php]]></category>

		<category><![CDATA[conectare la MySQL]]></category>

		<guid isPermaLink="false">http://www.softrelated.com/cum-ne-conectam-la-o-baza-de-date-mysql.html</guid>
		<description><![CDATA[Pentru inceput daca nu aveti idee cum sa va creati o baza de date MySQL puteti afla cum citind aceste doua articole: instalare localhost pe Windows si Navicat - MySQL GUI
Ideea de baza consta in faptul ca vom avea nevoie de 5 variabile:

Server - localhost
Database - test
Table - exemplu
Username - root
Password - parola

Codul cu care [...]]]></description>
			<content:encoded><![CDATA[<p>Pentru inceput daca nu aveti idee cum sa va creati o baza de date MySQL puteti afla cum citind aceste doua articole: <a href="http://www.softrelated.com/instalareconfigurare-localhost-pe-windows.html" target="_blank" title="instalare localhost pe Windows">instalare localhost pe Windows</a> si <a href="http://www.softrelated.com/navicat-probabil-cel-mai-bun-mysql-gui.html" target="_blank" title="Navicat - MySQL GUI">Navicat - MySQL GUI</a></p>
<p>Ideea de baza consta in faptul ca vom avea nevoie de 5 variabile:</p>
<ul>
<li><strong>Server</strong> - localhost</li>
<li><strong>Database</strong> - test</li>
<li><strong>Table</strong> - exemplu</li>
<li><strong>Username</strong> - root</li>
<li><strong>Password</strong> - parola</li>
</ul>
<p>Codul cu care ne putem conecta:</p>

<div class="wp_syntax"><div class="code"><pre class="php"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000066;">mysql_connect</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;localhost&quot;</span>, <span style="color: #ff0000;">&quot;root&quot;</span>, <span style="color: #ff0000;">&quot;parola&quot;</span><span style="color: #66cc66;">&#41;</span> or <span style="color: #000066;">die</span><span style="color: #66cc66;">&#40;</span><span style="color: #000066;">mysql_error</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Conectare cu succes.&quot;</span>;
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>Dupa ce ne-am conectat la baza de date ne mai ramane sa selectam baza de date cu care vom lucra. Asadar vom avea codul:</p>

<div class="wp_syntax"><div class="code"><pre class="php"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000066;">mysql_connect</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;localhost&quot;</span>, <span style="color: #ff0000;">&quot;root&quot;</span>, <span style="color: #ff0000;">&quot;parola&quot;</span><span style="color: #66cc66;">&#41;</span> or <span style="color: #000066;">die</span><span style="color: #66cc66;">&#40;</span><span style="color: #000066;">mysql_error</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Conectare cu succes.&quot;</span>;
<span style="color: #000066;">mysql_select_db</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;test&quot;</span><span style="color: #66cc66;">&#41;</span> or <span style="color: #000066;">die</span><span style="color: #66cc66;">&#40;</span><span style="color: #000066;">mysql_error</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
<span style="color: #000066;">echo</span> <span style="color: #ff0000;">&quot;Conectarea la baza de date test a fost facuta cu succes.&quot;</span>;
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p><font size="-1"><em>~ localhost poate fi inlocuit si cu 127.0.0.1 ~</em></font></p>
]]></content:encoded>
			<wfw:commentRss>http://www.softrelated.com/cum-ne-conectam-la-o-baza-de-date-mysql.html/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
