Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova

[es] :: PHP :: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova

[ Pregleda: 1846 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

a zo zo

Član broj: 117395
Poruke: 189
*.dynamic.sbb.rs.



+1 Profil

icon Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova04.03.2009. u 13:03 - pre 184 meseci
Pozdrav!
Ucim PHP, nije los, nije tezak sve dok... vidite iz naslova :)
Pokupila sam neke vjezbe sa kursa koji je pohadjala moja drugarica koja nije bogzna sta tamo naucila. Ne znam kako da podesim sve oko konekcije za rad sa bazom, u PHPMyAdminu na Wamp Serveru napravim bazu ali sta dalje. Postoje neke skripte koje moraju biti ukljucene u folder kao i glavni skript ali javlja gresku. Dalje, nesto ne valja ni sa slanjem poste. Imam neki PHPMailer kao skript ali cemu sluzi i kako da nesto posaljem nemam pojma.
Dacu vam skripte koje imam pa ako neko moze da pomogne...
----------------------------------------------------------------------
Code:

<?php

// common.php, zajednicka funkcionalnost za celu aplikaciju

session_start();


// ocitaj vrednost iz cookie-ja za jezik
if (isset($_COOKIE['c_lang'])) {
  $_SESSION['lang'] = $_COOKIE['c_lang'];
}; 


// definisanje jezika u kom ce se prikazivati aplikacija
if ($_GET['lang'] == 'en') {
  // cookie za engleski jezik
  setcookie('c_lang', 'en', (time() + (60*60*24*365)));
  $_SESSION['lang'] = 'en';
} elseif (isset($_GET['lang'])) {
  // cookie za srpski (default) jezik
  setcookie('c_lang', 'rs', (time() + (60*60*24*365)));
  $_SESSION['lang'] = 'rs';

};

// ako jos uvek jezik nije definisan - definisi default jezik
if (!isset($_SESSION['lang'])) $_SESSION['lang'] = 'rs'; 

// ucitaj fajl sa jezicima
include_once $_SESSION['lang'].".php";

?>

--------------------------------------------------------------
Code:

<?php

// connection.php, parametri konekcije
define('dbServer', '127.0.0.1');
define('dbUser', 'root');
define('dbPasswd', '');
define('dbName', 'address_book');

?>

---------------------------------------------------------------
Code:

<?php

/*
 * contact.php, iAdresar
 *
 **/


session_start();

if ($_GET['logout'] == '1') {
  unset($_SESSION['ulogovan']);
};

if ($_SESSION['ulogovan'] != 'da') {
  header("location: index.php");
  exit;
}


// ucitaj podesavanja konekcije
include_once "settings.php";

// ucitaj podesavanja konekcije
include_once "connection.php";

include_once "common.php";



// povezivanje na server
$db = mysql_connect(dbServer, dbUser, dbPasswd) or die(mysql_error());
mysql_select_db(dbName, $db) or die(mysql_error());



// brisanje
if (isset($_GET['delete'])) {
  $sql = "delete from contact where id = ".$_GET['delete'];
  mysql_query($sql) or die(mysql_error());
  $msg = $lang['Delete success'];
  //echo $sql;
};


if (isset($_GET['id'])) {
  
  $sql = "select * from contact where id = ".$_GET['id'];
  //echo $sql;
  $recSet = mysql_query($sql) or die(mysql_error());
  $rec = mysql_fetch_array($recSet);
  
  $contact_id = $rec[0];
  $firstName = $rec['first_name'];
  $lastName = $rec['last_name'];
  $phone = $rec['phone'];
  $ctId = $rec['ct_id'];
  
};


// upisivanje novog
if (isset($_POST['send'])) {
  
  if (isset($_POST['update'])) {
    $sql = "update contact set ";
  } else {
    $sql = "insert into contact set ";
  };
  
  $sql .= "first_name = '".$_POST['firstName']."', "; 
  $sql .= "last_name = '".$_POST['lastName']."', ";
  $sql .= "phone= '".$_POST['phone']."', ";
  $sql .= "ct_id = '".$_POST['ctId']."', ";
  $sql .= "user_id = '".$_SESSION['user_id']."' ";
  
  
  if ($_FILES["datoteka"]["size"] > 0) {
    // otvori fajl
    $fp = fopen($_FILES["datoteka"]["tmp_name"], "r");
    $data = fread($fp, $_FILES["datoteka"]["size"]);
    $data = addslashes($data);
    fclose($fp);
    
    $sql .= ", file = '".$data."' ";
    $sql .= ", file_name = '".$_FILES["datoteka"]["name"]."' ";
  };
  
  

  if (isset($_POST['update'])) {
    $sql .= "where id = ".$_POST['update'];
  };
  
  //echo "66. ".$sql;
  mysql_query($sql) or die(mysql_error());
  
  if (isset($_POST['update'])) {
    //$msg = 'Cestitamo! Uspesno ste izmenuli postojeci zapis.';
    $msg = $lang['update ok'];
  } else {
    //$msg = 'Cestitamo! Uspesno ste upisali novi zapis.';
    $msg = $lang['insert ok'];
  };
  
};

// definise tekst na dugmetu
if (isset($_GET['id'])) {
  $btn_submit = 'Izmeni';
} else {
  $btn_submit = 'Unesi';
}



// kreiramo select menu sa tipom podatka
$sql = "select * from contact_type";
$recSet = mysql_query($sql);
$a_ct_id = array();
$a_ct_name = array();
while ($rec = mysql_fetch_array($recSet)){
  $a_ct_id[] = $rec['ID'];
  $a_ct_name[] = $rec['contact_type'];
};




include_once "header.php";

// selektuj sve iz tabele contact

$sql = "select * from contact ";
$sql .= "
LEFT OUTER JOIN contact_type ON 
contact_type.ID = contact.ct_id ";

$sql .= " WHERE user_id = ".$_SESSION['user_id'];


if (isset($_POST['btn_search'])) {

  $sql .= " AND ";
  $sql .= " (";
  $sql .= "first_name LIKE '%".$_POST['search_string']."%' OR ";
  $sql .= "last_name LIKE '%".$_POST['search_string']."%' OR ";
  $sql .= "phone LIKE '%".$_POST['search_string']."%' ";
  $sql .= ")";
}



//echo $sql;



$recSet = mysql_query($sql);


// link za logout
echo "<br />";
echo "<a href='".$_SERVER['PHP_SELF']."?logout=1'>Logout</a>";
echo "<br />";


echo "<a href='".basename($_SERVER['PHP_SELF'])."?lang=en'>English</a>";
echo "&nbsp;";
echo "<a href='".basename($_SERVER['PHP_SELF'])."?lang=rs'>Srpski</a>";


//echo "140. ".$lang['insert ok'];


?>

<form method="post" action="<?php echo basename($_SERVER['PHP_SELF']); ?>">

<input type="text" name="search_string">
<input type="submit" name="btn_search" value="<?php echo $lang['Search']; ?>">

</form>


<?php


// sistemske poruke
if (isset($msg)) echo $msg;



echo "\n<table border='1'>\n";
echo "<tr><th>Id</th><th>Ime</th><th>Prezime</th><th>Kontakt</th><th>Vrsta</th><th>&nbsp;</th></tr>\n";
$i = 0;
while ($rec = mysql_fetch_array($recSet)){
  echo "\n<tr>";
    echo "<td>";
    echo "<a href='".basename($_SERVER['PHP_SELF'])."?id=".$rec[0]."'>";
    echo ++$i;
    echo "</a>";
    echo "</td>";
    echo "<td>";
    echo $rec['first_name'];
    echo "</td>";
    echo "<td>";
    echo $rec['last_name'];
    echo "</td>";
    echo "<td>";
    echo $rec['phone'];
    echo "</td>";
    echo "<td>";
    echo $rec['contact_type']."&nbsp;";
    echo "</td>";
    
    echo "<td>";
    
    if (strlen($rec['file']) > 0) {
      echo "<a href='download.php?id=".$rec[0]."'>".$lang['Download file']."</a>";
    } else {
      echo "&nbsp;";
    }
    
    echo "</td>";

    echo "<td>";
    echo "<a href='".basename($_SERVER['PHP_SELF'])."?delete=".$rec[0]."'>Delete</a>";
    echo "</td>";
  echo "</tr>\n";
};
echo "</table>\n";


?>

<form method="post" action="<?php echo basename($_SERVER['PHP_SELF']); ?>" enctype="multipart/form-data">
  
  Ime : 
  <input type="text" name="firstName" value="<?php echo $firstName; ?>">
  <br />
  Prezime : 
  <input type="text" name="lastName" value="<?php echo $lastName; ?>">
  <br />
  Telefon : 
  <input type="text" name="phone" value="<?php echo $phone; ?>">
  <br />
  Tip: 
  
  <select name="ctId">
    <option value="0">(izaberite)</option>
    <?php
    for ($i = 0; $i < count($a_ct_id); $i++) {
      echo "<option value='".$a_ct_id[$i]."'";
      if ($ctId == $a_ct_id[$i]) echo " selected ";
      echo ">".$a_ct_name[$i]."</option>\n";
    };
    ?>
  </select>
  
  <br />
  
  Pridruzi fajl : 
  <input type="file" name="datoteka">
  
  <br /><br />
  
  <input type="submit" name="send" value="<?php echo $btn_submit; ?>">
  
  
<?php
if (isset($contact_id)) {
?>
  <input type="hidden" name="update" value="<?php echo $contact_id; ?>">
<?php
};
?>

</form>

<?php
include_once "footer.php";
?>

---------------------------------------------------------------------------

<?php

/*
 * contact_update.php,iAdresar
 *
 **/


// ucitaj podesavanja konekcije
include_once "settings.php";

// ucitaj podesavanja konekcije
include_once "connection.php";




// povezivanje na server
$db = mysql_connect(dbServer, dbUser, dbPasswd) or die(mysql_error());
mysql_select_db(dbName, $db) or die(mysql_error());



// brisanje
if (isset($_GET['delete'])) {
  $sql = "delete from contact where id = ".$_GET['delete'];
  mysql_query($sql) or die(mysql_error());
  $msg = 'Uspesno ste obrisali zapis.';
};


if (isset($_GET['id'])) {
  
  $sql = "select * from contact where id = ".$_GET['id'];
  //echo $sql;
  $recSet = mysql_query($sql) or die(mysql_error());
  $rec = mysql_fetch_array($recSet);
  
  $contact_id = $rec[0];
  $firstName = $rec['first_name'];
  $lastName = $rec['last_name'];
  $phone = $rec['phone'];
  
};


// upisivanje novog
if (isset($_POST['send'])) {
  
  if (isset($_POST['update'])) {
    $sql = "update contact set ";
  } else {
    $sql = "insert into contact set ";
  };
  
  $sql .= "first_name = '".$_POST['firstName']."', "; 
  $sql .= "last_name = '".$_POST['lastName']."', ";
  $sql .= "phone= '".$_POST['phone']."' ";

  if (isset($_POST['update'])) {
    $sql .= "where id = ".$_POST['update'];
  };
  
  //echo "66. ".$sql;
  mysql_query($sql) or die(mysql_error());
  
  if (isset($_POST['update'])) {
    $msg = 'Cestitamo! Uspesno ste izmenuli postojeci zapis.';
  } else {
    $msg = 'Cestitamo! Uspesno ste upisali novi zapis.';
  };
  
};

// definise tekst na dugmetu
if (isset($_GET['id'])) {
  $btn_submit = 'Izmeni';
} else {
  $btn_submit = 'Unesi';
}


include_once "header.php";

// selektuj sve iz tabele contact
$sql = "select * from contact";
$recSet = mysql_query($sql);


// sistemske poruke
if (isset($msg)) echo $msg;

echo "\n<table border='1'>\n";
echo "<tr><th>Id</th><th>Ime</th><th>Prezime</th><th>&nbsp;</th></tr>\n";
$i = 0;
while ($rec = mysql_fetch_array($recSet)){
  echo "\n<tr>";
    echo "<td>";
    echo "<a href='".basename($_SERVER['PHP_SELF'])."?id=".$rec[0]."'>";
    echo ++$i;
    echo "</a>";
    echo "</td>";
    echo "<td>";
    echo $rec['first_name'];
    echo "</td>";
    echo "<td>";
    echo $rec['last_name'];
    echo "</td>";
    echo "<td>";
    echo $rec['phone'];
    echo "</td>";
    echo "<td>";
    echo "<a href='".basename($_SERVER['PHP_SELF'])."?delete=".$rec['ID']."'>Delete</a>";
    echo "</td>";
  echo "</tr>\n";
};
echo "</table>\n";


?>

<form method="post" action="<?php echo basename($_SERVER['PHP_SELF']); ?>">
  
  Ime : 
  <input type="text" name="firstName" value="<?php echo $firstName; ?>">
  <br />
  Prezime : 
  <input type="text" name="lastName" value="<?php echo $lastName; ?>">
  <br />
  Telefon : 
  <input type="text" name="phone" value="<?php echo $phone; ?>">
  <br /> 
  <input type="submit" name="send" value="<?php echo $btn_submit; ?>">

<?php
if (isset($contact_id)) {
?>
  <input type="hidden" name="update" value="<?php echo $contact_id; ?>">
<?php
};
?>

</form>



<?php

include_once "footer.php";

?>
----------------------------------------------------------------------------

<?php

// download.php, download fajla iz baze

// ucitaj podesavanja konekcije
include_once "connection.php";


// povezivanje na server
$db = mysql_connect(dbServer, dbUser, dbPasswd) or die(mysql_error());
mysql_select_db(dbName, $db) or die(mysql_error());


$sql = "select * from contact where id = ".$_GET['id'];
$result = mysql_query($sql);

$row = mysql_fetch_array($result);

header("Content-type: application/force-download");
header('Content-Disposition: attachment; filename="'.$row['file_name'].'"');

echo $row['file'];
exit;





?>
----------------------------------------------------------------------

<?php

// en.php, engleski

$lang['insert ok'] = "Success! Insert is OK!"; // Success! Insert is OK!
$lang['update ok'] = "Success! Update is OK!"; // Success! Update is OK!
$lang['Delete success'] = 'Delete success.';  // Delete success.
$lang['Download file'] = "Download file";     // Download file
$lang['Search'] = "Search";

?>

--------------------------------------------------------------------

  //footer.php
  
  <br />
  &copy;
  <?php echo date('Y'); ?>
  <?php echo APP_DEVELOPER; ?>
  
  </body>
</html>

---------------------------------------------------------------------
//header.php
<html>
  <head>
    <title><?php echo APP_NAME; ?></title>
  </head>
  <body>
  
 -------------------------------------------------------------------------

<?php

// index.php, login forma

session_start();


// ako sam ulogovan, posalji me na sledecu stranicu
if ($_SESSION["ulogovan"] == "da") {
  header("location: contact.php");
  exit;
}


// ucitaj podesavanja konekcije
include_once "settings.php";

// ucitaj podesavanja konekcije
include_once "connection.php";



// povezivanje na server
$db = mysql_connect(dbServer, dbUser, dbPasswd) or die(mysql_error());
mysql_select_db(dbName, $db) or die(mysql_error());


if (isset($_POST['posalji'])) {

  $sql = "select * from user where ";
  $sql .= " username = '".$_POST['username']."' "; 
  $sql .= " and password = '".$_POST['sifra']."' ";
  
  //echo $sql;
  $recSet = mysql_query($sql);
  
  if (mysql_num_rows($recSet) == '1') {
      
      $_SESSION['ulogovan'] = 'da';
      setcookie('c_username', $_POST['username'], (time() + (60 * 60 *24 *365))); 
      while ($row = mysql_fetch_array($recSet)) {
        $_SESSION['user_id'] = $row[0];
        $_SESSION['user_name'] = $row['name'];
      };
      
      header("location: contact.php");
      exit;
    
    } else {
      
      // u slucaju pogresnog logovanja...
      header("location: ".basename($_SERVER['PHP_SELF'])."?login=error");
      exit;
      
    
    };
    
  
  
  

}

// ocitavamo cookie sa username-om
$username = $_COOKIE["c_username"];

?>


<form method="post" action="<?php echo basename($_SERVER['PHP_SELF']); ?>">
Korisnicko ime : 
<input type="text" name="username" value="<?php echo $username; ?>">
<br />
Sifra : 
<input type="password" name="sifra">

<br /><br />

<input type="submit" name="posalji" value="Prijava">
</form>


----------------------------------------------------------------------------------

<?php

// rs.php, srpski

$lang['insert ok'] = "Uspesno ste uneli novi zapis!";
$lang['update ok'] = "Uspesno ste izmenuli zapis";
$lang['Delete success'] = 'Uspesno ste obrisali zapis.';
$lang['Download file'] = "Preuzmi fajl";
$lang['Search'] = "Pretraga";
?> 

-------------------------------------------------------------------------------------

<?php

/*
 * settings.php, , podesavanja aplikacije 
 *
 **/

define('APP_NAME', 'iAdresar');
define('APP_DEVELOPER', 'Smart Team');


?>

----------------------------------------------------------------------------------------

Nesto ne valja... Javlja gresku u browseru. Vjerujem da je za sad i ovog previse... Za mail cu pitati drugom prilikom, kao i za sesije. Pozdrav, hvala!
:)








 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.dynamic.stcable.net.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova04.03.2009. u 13:06 - pre 184 meseci
Kao prvo, koristi CODE tagove. Kao drugo, koju gresku javlja?
 
Odgovor na temu

dakipro
Dalibor Jovic
Web Developer
Bergen, Norway

Moderator
Član broj: 31848
Poruke: 1792
91.148.79.*

Sajt: norway.dakipro.com


+190 Profil

icon Re: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova04.03.2009. u 13:16 - pre 184 meseci
Zaista je malo apstraktno ocekivati da ce sad neko sve fajlove skinuti, podesiti sve kao ti i probati da bi ti rekao u cemu je problem. Probaj da lokalizujes prblem, gde se i sta tacno javlja.
I kad imas ovako puno koda, mozda je bolje okaciti sve zapakovano, lakse je ljudima da skinu i raspakuju nego da sad prave gomilu fajlova
 
Odgovor na temu

a zo zo

Član broj: 117395
Poruke: 189
*.dynamic.sbb.rs.



+1 Profil

icon Re: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova04.03.2009. u 19:30 - pre 184 meseci
Pa u svakom ovom djelicu pise kako se koji zove, a vi samo trebate iskopirati... Zar je to tesko? No, dobro. Jos cu se malo muciti :) I meni bi mozda bilo lijeno...
 
Odgovor na temu

a zo zo

Član broj: 117395
Poruke: 189
*.dynamic.sbb.rs.



+1 Profil

icon Re: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova04.03.2009. u 19:43 - pre 184 meseci
Pa sve ovo uradim ali se javlja greska:

Notice: Undefined index: ulogovan in C:\wamp\www\08\index.php on line 9
Notice: Undefined index: c_username in C:\wamp\www\08\index.php on line 65

i ispod onaj dio-forma za ukucavanje korisnickog imena i sifre. Zasto ovo gore?
 
Odgovor na temu

Man-Wolf
Mihailo Joksimovic
Beograd

Član broj: 17016
Poruke: 873
*.eunet.yu.



+13 Profil

icon Re: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova05.03.2009. u 07:06 - pre 184 meseci
Nisu to greske, vec "informacije" (namerno sam stavio pod znacima navoda). Da bi ih se resila, stavis:

Code:

// ako sam ulogovan, posalji me na sledecu stranicu
if (isset($_SESSION["ulogovan"]) AND $_SESSION["ulogovan"] == "da") {
  header("location: contact.php");
  exit;
}


Naime, javljaju se zato sto globalna promenljiva $_SESSION['ulogovan'], nije set-ovana, u trenutku pokretanja skripte (u tvom slucaju - pre nego sto se korisnik uloguje).

Sto se tice baze, posto ne javlja ni jednu gresku, znaci da ti sve radi ok na tom pitanju ....

Pitanje za PHPMyAdmin je malo nejasno. Sta konkretno hoces ?
 
Odgovor na temu

a zo zo

Član broj: 117395
Poruke: 189
*.dynamic.sbb.rs.



+1 Profil

icon Re: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova05.03.2009. u 17:07 - pre 184 meseci
Ni ja ne slusam RAP, i ja sam medju onih 20% :)
Hvala ti, poslusacu i probacu pa ako ne uspije dosadjivacu vam opet. Jadni vi s nama pocetnicima :)
 
Odgovor na temu

a zo zo

Član broj: 117395
Poruke: 189
*.dynamic.sbb.rs.



+1 Profil

icon Re: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova08.03.2009. u 21:13 - pre 184 meseci
Cao!
Uradim sve ono sa isset i bude ok, tj. ne izbacuje obavjestenje da nije identifikovan parametar vezan za sesije, ALI kad odem u PHPMyAdmin u WampServeru i nadjem bazu ispostavi se da u njoj nema nista a trebalo je da upise u nju ono sto je ukucano u formu za logovanje... Kako provjeravam da li je vrijednost koja se salje u bazu zaista otisla tamo a ne negdje u etar???
Tanx!
 
Odgovor na temu

[es] :: PHP :: Podesavanje konekcije za rad sa bazama MySql u PHP, sesija, mailova

[ Pregleda: 1846 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.