script ziua de nastere

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
Avatar utilizator
trif
Mesaje:500

script ziua de nastere

mai am o intrebare, am codul asta

Cod: Selectaţi tot

<?php
require_once('conectare.php'); 
$data_nasterii = date('j-m');  
$sql = "SELECT * FROM `members` WHERE `data_nasterii` REGEXP '^$data_nasterii' ";
$rezultat = mysql_query($sql);
if (mysql_num_rows($rezultat) == 0) {
    echo 'Astazi nu este ziua nimanui';
}
else {
echo 'Astazi este ziua lui:<br>';
$i=0;
 while ($i < $rezultat) {
  $rand=mysql_fetch_array($rezultat);
    echo ' '.$rand['nume'].' '.$rand['prenume'].' ';
	++$i;
  }
}
?>
care este final dar cum pun <br> ca sa nu imi faca array si fiecare nume sa merga unul sub altul, daca fac asa

Cod: Selectaţi tot

 echo ' '.$rand['nume'].' '.$rand['prenume'].' ';
imi pune rand nou cati membri sunt! cu stima trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo Mesaje:4343
Asa:
echo ' <br>'.$rand['nume'].' '.$rand['prenume'];

trif Mesaje:500
dar imi da tot spatiu cati membrii sunt ceva de genu
Astazi este ziua lui:

Trif Alexandru,
Tet Florean,
,
,
,
,
,
,
,
,
,
nu stiu care este baiul!:-?? cu stima trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo Mesaje:4343
Nu e corect WHILE cu "($i < $rezultat)", ci: while (rand=mysql_fetch_array($rezultat)) { //... }

trif Mesaje:500
multumesc mult. am facut schimbare si merge. dar mai am o intrebare la acest domeniu, aici imi zice la cine este ziua in ziua respectiva dar mai vreau sa mai fac inca 2 clasificari cu alegerea zilei de nastere: 1) "sarbatoritii luni sunt:..." si uite codul

Cod: Selectaţi tot

<?php
require_once('conectare.php'); 
$data_nasterii = date('j-m');  
$sql = "SELECT * FROM `members` WHERE `data_nasterii` REGEXP '^$data_nasterii' ";
$rezultat = mysql_query($sql);
if (mysql_num_rows($rezultat) == 0) {
    echo '<font color="red"> Astăzi nu este ziua de naştere a nimănui!</font>';
}
else {
echo '<font color="red"> Astazi este ziua lui:</font><br>';
$i=0;
while ($rand = mysql_fetch_array($rezultat))  {
    echo ' '.$rand['nume'].' '.$rand['prenume'].',<br>';
	++$i;
  }
}
?>
am modificat din

Cod: Selectaţi tot

date('j-m');  
in

Cod: Selectaţi tot

date('m');  
adica am eliminat ziua dar tot nu imi da nu stiu de ce.
si a doua clasificare este ca atunci cand este ziua unui membru sa ii se zica cand se autentifice "La multi ani! este ziua ta" si la codul de mai sus am pus

Cod: Selectaţi tot

$id = $_SESSION['SESS_ID'];
in care sa verifice daca este si dupaia sa selecteze dar tot aceea imi afiseaza, este problema cu

Cod: Selectaţi tot

$sql = "SELECT * FROM `members` WHERE `data_nasterii` REGEXP '^$data_nasterii' ";
ca trebuie sa fie selectat dupa id? am facut si $id=$data_nasterii si dupaia sa selecteze daca nu sa nu selecteze. dar tot nu merge, nu stiu ce sa ii mai f ac. :-?? cu stima trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

trif Mesaje:500
uite ce am facut la prima faza cu "La multi ani! este ziua ta!

Cod: Selectaţi tot

<?php
$id = $_SESSION['SESS_ID'];
$data_nasterii = date('j-m');  
$sql="SELECT `id` FROM `members` WHERE `data_nasterii` REGEXP '^$data_nasterii' and `id`='$id' LIMIT 1";
$rezultat = mysql_query($sql);
if (mysql_num_rows($rezultat) == 0) {}
else {
echo '<font color="red"> Astazi este ziua ta de nastere:</font><br>';
while ($rand = mysql_fetch_assoc($rezultat)) {
    echo ' '.$rand['nume'].' '.$rand['prenume'].'<br>';
  }
} 
?>
imi afiseaza mesajul dar nu extrage din bd utilizatorul la care este ziua de nastere. dar prima chiar nu vrea sa imi iasa sau nu stiu ce sa ii fac! :-? cu stima trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo Mesaje:4343
1. Pentru sarbatoritii lunii incearca asa

Cod: Selectaţi tot

$data_nasterii = date('m'); 
$sql = "SELECT * FROM `members` WHERE `data_nasterii` REGEXP '[0-9 -]$data_nasterii'";
2. Pentru mesajul de "La multi ani", incearca Selectul asa:

Cod: Selectaţi tot

$sql="SELECT `id`, `nume` FROM `members` WHERE `data_nasterii` REGEXP '^$data_nasterii' AND `id`='$id' LIMIT 1";
- `nume` e numele coloanei unde e stocat numele utilizatorului, altfel prelua doar coloana `id`

trif Mesaje:500
mersi mult, merge. mai am o intrebare, am codul asta

Cod: Selectaţi tot

<?php
$id = $_SESSION['SESS_ID'];
$data_nasterii = date('j-m');  
if($id = $_SESSION['SESS_ID'])
      {
        $sql1="SELECT `id`, `nume`, `prenume` FROM `members` WHERE `data_nasterii` REGEXP '^$data_nasterii' AND `id`='$id' LIMIT 1";
      }
      else
      {
        $sql2="SELECT `id`, `prenume` FROM `members` WHERE `id`='$id' LIMIT 1";
       }
      $sql2=mysql_query($sql1) or die("Nu sa reusit selectarea membrului");
      while($rezultat=mysql_fetch_array($sql2))
if (mysql_num_rows($rezultat) == 0) {}
else {
echo '<font color="red"> Astazi este ziua ta de nastere:</font><br>';
while ($rand = mysql_fetch_assoc($rezultat)) {
    echo ' '.$rand['nume'].' '.$rand['prenume'].'<br>';
  }
} 
 ?>
ceea ce vreau este ca atunci cand intra sa zica "bine ai venit..." dar cand este ziua lui de nastere sa zica "bine ai venit ... astazi este ziua ta de nastere. am facut codul de mai sus dar imi zice Warning: mysql_num_rows() expects parameter 1 to be resource, array given in m-am uitat si este if (mysql_num_rows($rezultat) == 0) {} si nu stiu ce sa fac. cu stima trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

trif Mesaje:500
am rezolvat o problema

Cod: Selectaţi tot

 <?php
$id = $_SESSION['SESS_ID']; 
$data_nasterii = date('j-m'); 
$sql="SELECT `id`, `nume`, `prenume` FROM `members` WHERE `data_nasterii` REGEXP '^$data_nasterii' AND `id`='$id' LIMIT 1";
$rezultat = mysql_query($sql);
if (mysql_num_rows($rezultat) == 0) { }
else {
echo '<b><font color="blue"> La multi ani! </font></b><br>';
echo '<font color="red">Astazi este ziua ta de nastere!</font><br>';
while ($rand = mysql_fetch_assoc($rezultat)) {
    echo '<b> '.$rand['nume'].' '.$rand['prenume'].'</b>';
  }
} 
?>    
nu mai imi da eroarea aceea dar acum imi zice mesajul cand este ziua lui dar daca nu este ziua lui nu mai imi afiseaza nimic si am schimbat si if-ul dar tot degeaba ca nu merge si nu stiu ce sa ii mai fac. if (mysql_num_rows($rezultat) == 0) { } aici nu stiu cum sa fac ca sa imi dea ca atunci cand nu este ziua lui sa imi afiseze doar numele si prenumele. cu stima trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo Mesaje:4343
Incearca asa:

Cod: Selectaţi tot

     <?php
    $id = $_SESSION['SESS_ID'];
    $data_nasterii = date('j-m');
    $sql="SELECT `id`, `nume`, `prenume` FROM `members` WHERE `data_nasterii` REGEXP '^$data_nasterii' AND `id`='$id' LIMIT 1";
    $rezultat = mysql_query($sql);
    if (mysql_num_rows($rezultat) == 0) {
      echo 'Bine ai venit';
    }
    else {
    echo '<font color="red"> La multi ani! <br>Astazi este ziua ta de nastere:</font><br>';
    while ($rand = mysql_fetch_assoc($rezultat)) {
        echo ' '.$rand['nume'].' '.$rand['prenume'].'';
      }
    }
    ?>  

trif Mesaje:500
dar am facut asta dar eu doresc sa fie bine ai venit ion, asta vreau eu, crezi ca se poate modifica in alt fel codul si sa imi dea asta? cu stima trif
M-am hotarat!
De ce sa fiu trist?
Oricum nu intereseaza pe nimeni...!
Mai bine sunt fericit si ii enervez pe toti cu fericirea mea!
http://www.cantaricrestine.ro
---> cu stima Trif

MarPlo Mesaje:4343
Ar merge cu inca un Select, dar in if() (unde e pus // ...), care sa fie fara " `data_nasterii` REGEXP '^$data_nasterii' AND "

Cod: Selectaţi tot

if (mysql_num_rows($rezultat) == 0) {
      // ...
    }