begin process at 2012 05 30 13:10:24
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

creation numero facture


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

creation numero facture

mardi 18 janvier 2011 à 14:25:31 | creation numero facture

aureliemerlin

Bonjour à tous

j'aimerais reproduire la fonction suivante (qui me permet de calculer mon numéro de facture) en php

voici la fonction :

Private Function New_no_facture() As Long
Dim lngNo As Long
lngNo = CLng(Year(txtDate)) * 100 + CLng(Month(txtDate))
If DCount("[no facture]", "facture", "fix([no facture]/1000)=" & lngNo) > 0 Then
New_no_facture = DMax("[no facture]", "facture", "fix([no facture]/1000)=" & lngNo) + 1
Else
New_no_facture = 1000 * lngNo + 1
End If
End Function




quelqu'un a t il une idée ????


Merci d'avance

Bonne journée

Aurélie
mardi 18 janvier 2011 à 21:23:01 | Re : creation numero facture

cod57

bonsoir

tu veux generer un numero de facture unique en php ?
une proposition


Code PHP :
<?php
$date = date('YmdHis');
$date =(float)$date; /*force le type*/
echo $date;
echo '<br />';

//tu peux concaténer le timestamp
//echo time();
echo '<hr> Avec la concanètation<br />';
echo $date2=$date.'_'.time();
echo '<hr>';
//mais tu auras un string

//verifier si la facture existe
$link=mysql_connect('localhost','root','') or  die('? serveur');
$db=mysql_select_db('mabase') or  die('? base');
$sql="select * factures where id='$date'";
$query=mysql_query($sql) or  die('? query');
if(mysql_num_rows($query)>0){
$nb_fact = $date;
} else {
echo 'pas de facture presente';
/* ... */
}   
mysql_close($link);      
?>

a++
mardi 18 janvier 2011 à 21:26:03 | Re : creation numero facture

cod57

select * from ... (erratum) a++
vendredi 21 janvier 2011 à 09:51:57 | Re : creation numero facture

aureliemerlin

bonjour

Merci pour vos réponses.

A la place de reproduire la fonction je change de méthode
Je stocke l'année, le mois et le numéro de création de chaque facture et je voudrais récupérer lors de la création le plus grand numéro selon la date ce j'ai saisi voici le code (mais cela ne fonctionne pas ):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Ajout nouvelle facture</title>
</head>
<?php
require_once('includes/bd.inc.php');
require_once('includes/magicquotes.inc.php');
//vide ou client ou banque
if (isset($_POST['nouvellefacture_0']) == 'oui')
{
//facture vide
} else
{
if (isset($_POST['nouvellefacture_1']) == 'oui')
{
//facture client
if(isset($_POST['Num']) && !empty($_POST['Num']))
{
$NumClient = mysqli_real_escape_string($lien, $_POST['Num']);
}
if(isset($_POST['CodeCom']) && !empty($_POST['CodeCom']))
{
$CodeCom = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['CodeCom']));
}

}else
{
if (isset($_POST['nouvellefacture_2']) == 'oui')
//facture banque
{
if(isset($_POST['NumBanque']) && !empty($_POST['NumBanque']))
{
$NumClient = mysqli_real_escape_string($lien, $_POST['NumBanque']);
}
if(isset($_POST['CodeCom']) && !empty($_POST['CodeCom']))
{
$CodeCom = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['CodeCom']));
}
}
}

}
if(isset($_POST['Date']))
{
$date_explosee = explode("/", $Date);
$jour = $date_explosee[0];
$mois = $date_explosee[1];
$annee = $date_explosee[2];
$resultat1 = mysqli_query($lien, "select max(Numero) bdfacture where Mois ='$mois' and Annee ='$annee'");
$rs=mysqli_query($resultat1);
if ($rs = @mysqli_query ($sql))
{
if (@mysqli_num_rows($rs)>0)
{
while ($tab = mysqli_fetch_array($rs))
{
//traitement
$NumFacture = $tab['Numero'] +1;
}
}
else {
$NumFacture = 1;
}
}
else {
echo 'Erreur MySQL : '.mysql_error();
}

$Date =changedatefrus(mysqli_real_escape_string($lien, $_POST['Date']));
$sql = 'INSERT INTO bdfacture set Nofacture = "' .$NumFacture .'", CodeClient = "' .$NumClient .'", Codecommercial = "' .$CodeCom .'", Date = "' .$Date .'"' ;

if (!mysqli_query($lien, $sql))
{
$erreur = "erreur dans l'ajout de la facture : " .mysqli_error($lien);
include 'erreur.html.php';
header ('location : modifreglementapp.php');

}
}



?>
<?php
function changedatefrus($datefr)
{
$dateus=$datefr{6}.$datefr{7}.$datefr{8}.$datefr{9}."-".$datefr{3}.$datefr{4}."-".$datefr{0}.$datefr{1};
return $dateus;
}
?>
<body>
</body>
</html>
je n'arrive pas à récupérer le plus grand numéro


quelqu'un a t il une idée ???

merci d'avance

Bonne journée

Aurélie
vendredi 21 janvier 2011 à 10:26:42 | Re : creation numero facture

cod57

bonjour

dans ta fonction je crois que c'est pas dans le bonne ordre

Code PHP :
<?php
$Date = mysqli_real_escape_string(changedatefrus($_POST['Date']));

/* $lien ça vient d'ou ?

$lien = mysqli_real_escape_string($lien);

// puis ton insertion
*/
?>


a++
vendredi 21 janvier 2011 à 11:19:57 | Re : creation numero facture

aureliemerlin

si je mets $Date = mysqli_real_escape_string(changedatefrus($_POST['Date']));
j'arrive à créer une ligne dans ma table facture mais tous les champs sont vides

merci
vendredi 21 janvier 2011 à 11:24:22 | Re : creation numero facture

TychoBrahe

Salut,

@cod57 : Tu devrais lire la doc de mysqli_real_escape_string() avant de répondre,c e que tu propose ne peux pas fonctionner. En effet, mysqli_real_escape_string() prend toujours deux arguments : en premier le lien mysqli et en second la chaîne à protéger.
vendredi 21 janvier 2011 à 13:13:58 | Re : creation numero facture

cod57

@TychoBrahe

d'accord avec toi, excuse moi
j ai pas fait gaffe au i tu as raison
je travaille tjs avec mysql je penser que c'était pareil ...
c'est l'ordre des fonctions qui me dérangé

$Date = mysqli_real_escape_string($lien,changedatefrus($_POST['Date']));

bon faut voir maintenant si c'est bien ça ...

a++

mercredi 26 janvier 2011 à 16:01:11 | Re : creation numero facture

aureliemerlin

bonjour,


voici un bout de mon code pour ma création de facture :
$Date = changedatefrus(mysqli_real_escape_string($_POST['Date']));
$date_explosee = explode("/", $Date);
$jour = $date_explosee[0];
$mois = $date_explosee[1];
$annee = $date_explosee[2];
$resultat1 = mysqli_query($lien, "select max(Numero) bdfacture where Mois ='$mois' and Annee ='$annee'");
$bdfacture = array();
while ($ligne = mysqli_fetch_array($resultat1))
{
$bdfacture[]= array('Numero' => $ligne ['Numero']);

}
$NumFacture = $bdfacture['Numero'] ;
$sql = 'INSERT INTO bdfacture set Nofacture = "' .$NumFacture .'", CodeClient = "' .$NumClient .'", Codecommercial = "' .$CodeCom .'", Date = "' .$Date .'", Annee = "' .$annee .'"' ;

je n'arrive pas a récupérer mon plus grand numéro

quelqu'un a t il une idée ???


merci d'avance

Aurélie
jeudi 27 janvier 2011 à 17:08:49 | Re : creation numero facture

aureliemerlin

bonjour

voici un morceau de code qui me permet de créer une facture mais j'ai un problème pour récupérer mon numéro maximum
voici le code :
if(isset($_POST['Date']))
{
require_once('includes/bd.inc.php');
require_once('includes/magicquotes.inc.php');
$Date =changedatefrus( mysqli_real_escape_string($lien, $_POST['Date']));
$CodeCom = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['CodeCom']));
$Evolutionfacture = 'NPAY';
$mois = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['mois']));
$annee = htmlspecialchars(mysqli_real_escape_string($lien, $_POST['annee']));
// $query = "SELECT MAX(Numero) as num FROM bdfacture WHERE Mois ='$mois' and Annee ='$annee' "
$requete = "select max(Numero) from bdfacture WHERE Mois ='$mois' and Annee ='$annee' ";
$result = mysqli_query($requete);
if (! $result)
{
$NumFacture = "01";
} else {
// traitements ....
$ligne = mysqli_fetch_array($result);
$NumFacture = $ligne +1 ;
}

$sql = 'INSERT INTO bdfacture set CodeClient = "' .$NumClient .'", Codecommercial = "' .$CodeCom .'", Date = "' .$Date .'", Mois = "' .$mois .'", Annee = "' .$annee .'", Numero = "' .$NumFacture .'", TypeFacture = "' .$TypeFacture .'", TypeClient2 = "' .$TypeClient2 .'", Evolutionfacture = "' .$Evolutionfacture .'"';



quelqu'un a t il une idée ????,


merci d'avance

Aurélie


Cette discussion est classée dans : fonction, numero, creation, facture, lngno


Répondre à ce message

Sujets en rapport avec ce message

Fonction str_shuffle! [ par jnbrunet ] Salut, voilà sur mon site, je dois générer une clef du genre:$numero = "01234567890123456789"; $clef = str_shuffle($numero);Bon, le problème est que l Avoir des champs uniques dans une fonction récursive [ par lowkey ] Bonsoir !! Voici mon code :$session['nombre_de_chemins']=0;function arborescence_question_reponse($numero_question, $niveau=0, $une_variable=''){      Fonction numero de page [ par scorpion077 ] Bonjour,je cherche une fonction numeropage avec en paramètre un nb de page.Le resultat serait le suivant : 1 2 3 4 5Si on clique sur la page 7 ca affi Aide pour creation de fonction [ par nagrom_om ] Comment fait on pour creer une fonction avec des parametres optionnels.Genre function Somme(a, b, c, d) ou c et d sont optionnels... HELP PLS [ par nabila1986 ] Bonjour, je veux juste de l'aide et une idee parceque jarrive pas a trouver de reponse moi-meme (je suis debutante). donc ce que je veux faire c'est a Comportement anormal d'un fonction [ par christobal ] Bonjour, Afin de générer une url suivant le titre d'un article j'ai écrit cette fonction [code=php]function GenerationUrl($text) { $text = iconv('UTF Afficher une image en fonction d'un pourcentage [ par loupile ] Bonjour à tous, je m'explique alors voilà j'ai un album dans lequel j'ai une ou plusieurs images stockées dans une base de données. ces images dans Calcul de l'azimut en fonction de 2 point GPS [ par THorgalfr ] Bonjour à tous, Je cherche à créer une fonction qui me permette en renseignant les coordonnées GPS (lat,lon)de deux positions (A et B). J'ai réussi à comment faire un saut avec PHP [ par goldray ] Salut à tous , est ce que on peut faire un saut avec le php ? c.a.d je veux soit une fonction qui permet de sortir d'un boucle ou d'une condition soit besoin d'une aide en php svp .. [ par hasnaa14 ] Bonjour tout le monde , je suis un debutant en php et j'ai vraiment besoin de votre aide ça fais une semaine que j'essai de le faire seul mais rien ,


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,342 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales