[Recomendado] Preguntas Mas Frecuentes de PHP (scripts)

Iniciado por Cuantico, 28 Febrero 2004, 05:01 AM

0 Miembros y 1 Visitante están viendo este tema.

Cuantico

#10
-Como envio correos desde mi PHP?


<?php 
$destinatario 
"cuántico@qantic.net"// Quien recibirá los corroes
$asunto "Enviando correo html"// tema del correo

// Este es el Cuerpo, el contexto del mensaje, la esencia del correo, el todo :)
$cuerpo 
<h1>Hola usuarios del elhacker.net!</h1> 
<p> 
<b>Holas esto va en negrita</b>. <i>esto en cursiva</i><u> y esto subrayado</u> 
</p> 

'


/* estas dos lineas que te siguen
son las que te permiten, enviar correos
en formato html, sin que salga el codigo de
html */
$headers "MIME-Version: 1.0\r\n"
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n"
 
// Este es para decir, de donde viene
$headers .= "From: cuántico <cuántico@qantic.net>\r\n"

// aqui entra el trabajo del mail()
mail($destinatario,$asunto,$cuerpo,$headers) ;
?>


Lo que te permite enviar correos html, es esto:

$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";


pos si lo quitas, ya enviará el codigo directamente..


Tambien, si quieres que te responda a otra persona, le agregas otro header (siempre antes del mail(). )

que sería:


$headers .= "Reply-To: alex@elhacker.net\r\n";


Para enviar copias:

$headers .= "Cc: cuántico@orangemail.com.do\r\n";

Para enviar copia oculta:


$headers .= "Bcc: cuántico@qantic.net\r\n";


y si quieres agregar mas direcciones, pues los divides por comas ","...

Si todo esta como lo indico aqui, tu phpmailer, debería de funcionar a la perfección...
:)

Cuantico

neohex escribio:

Bueno, pues aqui viene la última versión (v.1.2) del Sistema de Links (con Categorias)..jeje, es broma xDDDD
No te voy a poner las actualizaciones de cada archivo...directamente te pongo el sistema de nuevo y me ahorro tiempo...
Primero tienes que crear las tablas:
CREATE TABLE enlaces (
id INT(11) NOT NULL AUTO_INCREMENT,
cid INT(11) NOT NULL,
nombre VARCHAR(50) NOT NULL,
descr VARCHAR(255) NOT NULL,
dire VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);

CREATE TABLE categorias (
id INT(11) NOT NULL AUTO_INCREMENT,
cat VARCHAR(50) NOT NULL,
PRIMARY KEY (id)
);

Ahora los 5 archivos:
[1]- config.php
[2]- entrar.php
[3]- admin.php
[4]- enlaces.php
[5]- salir.php

[1]- config.php//Se encarga de conectar con la DB y contiene los datos del admin.
<?php
//Sistema De Links Con Categorias 100% by neohex
//Administrador y Password
$administrador "admin_nick";
$password "admin_pass";
//Conexion con la DB
$dbhost "servidor";
$dbuser "usuario";
$dbpass "password";
$db "base_datos";
//NO MODIFICAR MAS DESDE AKI
$conec = @mysql_connect("$dbhost""$dbuser""$dbpass");
$dbconec = @mysql_select_db($db$conec);
if (
eregi("config.php"$_SERVER['PHP_SELF'])){
header ("Location: enlaces.php");
}
?>


[2]- entrar.php//Este archivo es para que el administrador se conecte.
<?php
//Sistema De Links Con Categorias 100% by neohex
if (isset($entrar)){
include (
"config.php");
$admin $_POST['admin'];
$pass $_POST['pass'];
if (
$admin == $administrador && $pass == $password){
setcookie("neo_admin",$admin,time()+3600);
setcookie("neo_pass",$pass,time()+3600);
header ("Location: admin.php");
}else{
echo 
"Ese administrador no se corresponde con esa contraseña";
}
}else{
?>

<form method="post" action="<? $PHP_SELF ?>">
Admin:<input type="text" name="admin"><br>
Pass:<input type="text" name="pass"><br>
<input type="submit" name="entrar" value="Entrar">
<?php
}
?>


[3]- admin.php//Este sirve para agregar mas enlaces y crear mas categorias.
<?php
//Sistema De Links Con Categorias 100% by neohex
if ($_COOKIE["neo_admin"]){
include(
"config.php");
$admin $_COOKIE["neo_admin"];
$pass $_COOKIE["neo_pass"];
if (
$admin == $administrador && $pass == $password){
$ins $_GET['ins'];
if (
$ins == ""){
header ("Location: $PHP_SELF?ins=admin");
}
if (
$ins == "admin"){
echo 
"<center><a href=\"$PHP_SELF?ins=cat\">Insertar Categoría</a><br>";
echo 
"<a href=\"$PHP_SELF?ins=link\">Insertar Link</a><br><br>";
echo 
"<a href=\"enlaces.php\">enlaces.php</a><hr width=\"50\">";
echo 
"<a href=\"salir.php\">Salir</a></center>";
}
if (
$ins == "cat"){
if (isset(
$ins_cat)){
$cat $_POST['cat'];
$sql_cat "INSERT INTO categorias (cat) VALUES ('$cat')";
$resp_catmysql_query("$sql_cat"$conec) or die (mysql_error());
header ("Location: $PHP_SELF?ins=admin");
}else{
echo 
"<form method=\"post\" action=\"$PHP_SELF?ins=cat\">";
echo 
"<input type=\"text\" name=\"cat\"><br>";
echo 
"<input type=\"submit\" name=\"ins_cat\" value=\"Insertar\"><br>";
echo 
"<center><a href=\"$PHP_SELF?ins=admin\">Volver</a></center>";
}
}
if (
$ins == "link"){
if (isset(
$ins_link)){
$cid $_POST['cid'];
$nombre $_POST['nombre'];
$descr $_POST['descr'];
$dire $_POST['dire'];
$sql_link "INSERT INTO enlaces (cid,nombre,descr,dire) VALUES ('$cid','$nombre','$descr','$dire')";
$resp_link mysql_query("$sql_link"$conec) or die (mysql_error());
header ("Location: $PHP_SELF?ins=admin");
}else{
$sql "SELECT * FROM categorias";
$resp mysql_query("$sql"$conec) or die (mysql_error());
echo 
"<table border=\"1\">";
echo 
"<tr>";
echo 
"<td><b>Categoría</b></td>";
echo 
"<td><b><u>id</b></u></td>";
echo 
"</tr>";
while (
$row mysql_fetch_array($resp)){
echo 
"<tr>";
echo 
"<td>".$row['cat']."</td>";
echo 
"<td>".$row['id']."</td>";
echo 
"</tr>";
}
echo 
"</table><br>";
echo 
"<form method=\"post\" action=\"$PHP_SELF?ins=link\">";
echo 
"<table>";
echo 
"<tr>";
echo 
"<td>Id de la Categoria</td>";
echo 
"<td><input type=\"text\" name=\"cid\" size=\"3\"></td>";
echo 
"</tr>";
echo 
"<tr>";
echo 
"<td>Nombre del Link</td>";
echo 
"<td><input type=\"text\" name=\"nombre\"></td>";
echo 
"</tr>";
echo 
"<tr>";
echo 
"<td>Descripción</td>";
echo 
"<td><textarea name=\"descr\"></textarea></td>";
echo 
"</tr>";
echo 
"<tr>";
echo 
"<td>Dirección</td>";
echo 
"<td><input type=\"text\" name=\"dire\" value=\"http://\"></td>";
echo 
"</tr>";
echo 
"<tr>";
echo 
"<td></td>";
echo 
"<td><input type=\"submit\" name=\"ins_link\" value=\"Insertar\"></td>";
echo 
"</tr>";
echo 
"</table>";
echo 
"<br><center><a href=\"$PHP_SELF?ins=admin\">Volver</a></center>";
}
}
}else{
echo 
"Porque coño has modificado la cookie...xDDD";
}
}else{
header ("Location: entrar.php");
}
?>


[4]- enlaces.php//Este muestra un listado de categorias y sus enlaces correspondientes.
<?php
//Sistema De Links Con Categorias 100% by neohex
include ("config.php");
if (!
$cat){
echo 
"<center><b>CATEGORIAS</b></center>";
$sql ="SELECT * FROM categorias";
$resp mysql_query("$sql"$conec) or die (mysql_error());
while (
$row mysql_fetch_array($resp)){
echo 
"<a href=\"$PHP_SELF?cat=".$row['id']."\">".$row['cat']."</a><br>";
}
}
if (
$cat){
echo 
"<center><b>ENLACES</b></center>";
$sql ="SELECT nombre,descr,dire FROM enlaces WHERE cid='".$_GET['cat']."' ORDER BY id DESC";
$resp mysql_query("$sql"$conec) or die (mysql_error());
while (
$row mysql_fetch_array($resp)){
echo 
"<a href=\"".$row['dire']."\" target=\"_blank\">".$row['nombre']."</a><br>";
echo 
"".$row['descr']."<hr>";
}
echo 
"<br><center><a href=\"$PHP_SELF\">Volver</a></center>";
}
if (
$_COOKIE["neo_admin"]){
$admin $_COOKIE["neo_admin"];
$pass $_COOKIE["neo_pass"];
if (
$admin == $administrador && $pass == $password){
echo 
"<br><center><a href=\"admin.php\">Administrar enlaces</a></center>";
}
}
?>


[5]- salir.php//Este desconecta al administrador
<?php
//Sistema De Links Con Categorias 100% by neohex
if ($_COOKIE["neo_admin"]){
setcookie("neo_admin");
setcookie("neo_pass");
header ("Location: enlaces.php");
}else{
echo 
"Como piensas salir si ya estas fuera...?¿?¿?<br>";
echo 
"<a href=\"entrar.php\">Entrar</a>";
}
?>


¿Como usarlo?
[1]- Creas las tablas en la DB.
[2]- Subes todos los archivos a una misma carpeta.
[3]- Te logeas como administrador(entrar.php)
[4]- Desde admin.php puedes insertar mas enlaces y crear mas categorias.
[5]- Desde enlaces.php ves todas las categorias y sus enlaces correspondientes.

P.D: Espero que te sirva, no es muy profesional, pero puede darte el apaño...
:)

Cuantico

Riven-Ward wrote:

Tagboard en php y usando MySQL

Primero que nada, conexion.php que es el que nos ayudará a conectarnos en todo:

<?php 
$conexion 
mysql_connect("localhost","usuario","clave");
mysql_select_db ("basedatos"$conexion) OR die ("Base de datos inexistente, o temporalmente inactiva");
?>



TagBoard, Con MySQL y Smileys

Primero creamos la tabla en el PhpMyAdmin:

CREATE TABLE tagboard (
id int(10) auto_increment,
autor varchar(255) NOT NULL,
comentario varchar(255) NOT NULL,
fecha varchar(255) NOT NULL,
email varchar(255) NOT NULL,
PRIMARY KEY (id)
)


Ahora tagboard.php

<?php
include ("conexion.php");
if (
$comentario && $comentarios == "") {
echo 
"Porfavor, introduce un comentario";
}
elseif (
$comentario && $autor == "") {
echo 
"Porfavor, Introduce tu nick";
}
elseif (
$comentario) {
$fecha date("d/m/Y g:i:s a");
function 
smileys($var) {
$a str_replace("[","",$var) ;
$var str_replace("]","",$var) ;
$var str_replace(":D","[grin.gif]",$var) ;
$var str_replace(":)","[smiley.gif]",$var);
$var str_replace(";)","[wink.gif]",$var);
$var str_replace(":S","[huh.gif]",$var);
$var str_replace(":(","[sad.gif]",$var);
$var str_replace(":@","[angry.gif]",$var);
$var str_replace(":P","[tongue.gif]",$var);
//uno de estos por cada smiley
$var str_replace("[","<img src=\"smileys/",$var) ;
$var str_replace("]","\">",$var) ;
return 
$var;
}
$comentarios htmlentities ($comentarios);
$comentarios smileys($comentarios);
mysql_query ("INSERT INTO tagboard (autor,email,comentario,fecha) VALUES ('$autor','$email','$comentarios','$fecha')",$conexion);
?>

<html>
<head>
<script language="javascript">
function smileys () {
window.open ('smileys.php','smileys','width=100,height=100,resizable=no,toolbar=no,status=no');
}
</script>
</head>
<body>
<iframe src="comentarios.php"></iframe><br>
<form action="<?php echo $PHP_SELF ?>" method="post">
Introduce tu nick: <input type="text" name="autor"><br>
Introduce tu email: <input type="text" name="email"><br>
Introduce tu comentario: <textarea name="comentarios"></textarea><br><br>
<input type="submit" name="comentario" value="Enviar">
<br>
<a href="javascript:smileys()">Smileys</a>
</form>
</body>
</html>
<?
}
else {
?>
<html>
<head>
<script language="javascript">
function smileys () {
window.open ('smileys.php','smileys','width=300,height=400,resizable=no,toolbar=no,status=no');
}
</script>
</head>
<body>
<iframe src="comentarios.php"></iframe><br>
<form action="<?php echo $PHP_SELF ?>" method="post">
Introduce tu nick: <input type="text" name="autor"><br>
Introduce tu email/web: <input type="text" name="webemail"><br>
Introduce tu comentario: <textarea name="comentarios"></textarea><br><br>
<input type="submit" name="comentario" value="Enviar">
<br>
<a href="javascript:smileys()">Smileys</a>
</form>
</body>
</html>
<?php
}
?>


Luego comentarios.php

<?php
include ("conexion.php");
$sql "SELECT * FROM tagboard ORDER BY 'id' DESC";
$resp mysql_query ($sql);
while (
$row mysql_fetch_array ($resp)) {
echo 
"<font face=Verdana size=2><a href=mailto:".$row ["email"].">".$row ["autor"]."</a><br>";
echo 
"".$row ["comentario"]."<br>Fecha: ".$row ["fecha"]."<br><hr></font>";
}
?>


Y ahora, vamos por los Smileys. Creamos la tabla smileys,

CREATE TABLE smileys (
id int(10) auto_increment,
nombre varchar(25) NOT NULL,
url varchar(255) NOT NULL,
texto varchar(10) NOT NULL,
PRIMARY KEY (id)
)


Ahora insertamos los smileys que tengamos en el PhpMyAdmin (vamos a insertar, dentro de la tabla smileys).

Lo hacemos de la siguiente manera:

id: Dejamos en blanco
nombre: ejemplo, Grin.
url: nombre del archivo, ejemplo, grin.gif.
texto: como hacer el smiley, ejemplo, :D

Ahora creamos smileys.php

<table>
<tr><td>Nombre</td><td>Imágen</td><td>Forma de hacerlo</td></tr>
<?php
include ("conexion.php");
$sql "SELECT * FROM smileys";
$resp mysql_query ($sql);
while (
$row mysql_fetch_array ($resp)) {
echo 
"<tr><td>".$row ["nombre"]."</td><td><img src=smileys/".$row ["url"]."></td><td>".$row ["texto"]."</td></tr>";
}
?>


Recuerden que deben poner los smileys en el directorio smileys.

Eso es todo con el Tagboard ;D. Cualquier error avisarme con línea y todo.
:)

Cuantico

Riven-Ward wrote:

Ahora crearemos un sistema de afiliados, que contara visitas entrantes, salientes, etc, tal como el GoldLink (ahora RivenLink xDD).

Creamos la tabla en el PhpMySql:

CREATE TABLE afiliados (
id int(10) auto_increment,
nom varchar (255) NOT NULL,
web text NOT NULL,
lec int(10) NOT NULL,
descripcion varchar(255) NOT NULL,
entrantes int(10) NOT NULL,
PRIMARY KEY (id)
)



Ahora creamos el archivo que mostraría a los afiliados, afiliados.php.


<?php
include ("conexion.php");
$sql "SELECT * FROM afiliados";
$resp mysql_query ($sql);
while (
$row mysql_fetch_array ($resp)) {
echo 
"<a onMouseOver=\"window.status='Descripción: ".$row ["descripcion"]." | Visitas Entrates: ".$row ["entrantes"]." | Visitas Salientes: ".$row ["lec"]."';return true\" href=afiliado.php?id=".$row ["id"]." target=_blank>".$row ["nom"]."</a><br>";
}
echo 
"<br><br> <a href=\"afiliate.php\">Afiliate Aqui</a>";
?>


Ahora creamos el archivo al que iría al apretar sobre un afiliado, afiliado.php

<?php
include("conexion.php");
$sql "SELECT * FROM afiliados WHERE id LIKE '$id'";
$resp mysql_query($sql);
$suma mysql_query("select * from afiliados where id like $id",$conexion);
$upd=mysql_fetch_array($suma);
$lec=$upd["lec"]+1;
$update=mysql_query("Update afiliados Set lec=$lec Where id=$id",$conexion);

while (
$row mysql_fetch_array($resp)) {
$url $row["web"];
$nombre $row["nom"];
$salidas $row["lec"];
$descripcion $row ["descripcion"];
$entradas $row ["entrantes"];
}
?>

<html>
<head>
<meta http-equiv="refresh" content="1;URL=<?php echo "$url;?>">
</head>
<body>
Nombre: <?php echo $nombre ?>&nbsp;&nbsp;(<?php echo $url ?>)</font><br>
Descripcion: <?php echo $descripcion ?><br>
Visitas salientes: <?php echo $salidas ?>&nbsp;&nbsp;&nbsp;Visitas entrantes: <?php echo $entradas ?>.</font><br>
</body>
</html>


Ahora el archivo para agregar afiliados, afiliate.php

<?php
include ("conexion.php");
if (
$nuevo) {
$id $_POST ['web'];
$id2 mysql_query ("SELECT id FROM afiliados WHERE web LIKE '$id'",$conexion);
mysql_query ("SELECT * FROM afiliados");
mysql_query ("INSERT INTO afiliados (nom,web,descripcion) VALUES ('$nom','$web','$descripcion')",$conexion);
echo 
"Has sido agregado a la base de datos con exito <img src=\"http://www.elextremo.cl/smiley.gif\">. Debes linkearnos a http://www.aquituweb.com/in.php?id=TUID. Puedes ver tu id en la sección de afiliados.";
}
else {
?>

<form action=afiliate.php action="post">
Ingresa el nombre de tu web: <input type=text name=nom><br>
Ingresa la url de tu web: <input type=text name=web><br>
Ingresa la descripcion de tu web: <input type=text name=descripcion><br>
<input type=submit name=nuevo value=Registrar>
</form>
<?
}
?>


Y por último, el archivo que contará las visitas provenientes del afiliado, in.php

<?php
include ("conexion.php");
$sql "SELECT * FROM afiliados WHERE id LIKE '$id'";
$resp mysql_query ($sql);
$en mysql_query ("SELECT * FROM afiliados WHERE id LIKE '$id'",$conexion);
$upd mysql_fetch_array ($en);
$entrantes $upd ["entrantes"]+1;
$update mysql_query ("UPDATE afiliados SET entrantes = $entrantes WHERE id LIKE '$id'",$conexion);
while (
$row mysql_fetch_array ($resp)) {
$entrantes $row ["entrantes"];
}
echo 
"Hola, la web ".$row ["nom"]." nos ha mandado $entrantes visitas :)";
?>

<html>
<head>
<meta http-equiv="refresh" content="1;URL=index.htm">
</head>
</html>


Esto es todo con el Sistema de Afiliados :).
:)

Cuantico

Riven-Ward wrote:

Este es un script muy simple, pero que servira mucho cuando quieras que tus usuarios suban sus fotos a tu web :P.

upload.php

<?php
if ($enviar) {
move_uploaded_file($archivo,"archivos/$archivo_name");
$url "http://www.aquituweb.com/archivos/$archivo_name";
echo 
"Archivo subido exitosamente";
}
else {
?>

<form method="post" action="upload.php" enctype="multipart/form-data">
<input type="file" name="archivo"><br>
<input name="enviar" type="submit">
<?php
}
?>


Debemos crear la carpeta archivos y darle permisos 777. Eso es todo.
:)

Cuantico

También está creado igual q el include()
el include_once()
Q hace la misma función del primero, pero q si el codigo fue incluido por ningún caso será incluido otra vez. Es usado para esto, por si no quieres q un codigo se repita, pues usa include_once

Lo mismo para require() y require_once()
:)

Cuantico

:)

Cuantico


Para los links

<?php
function href ($link$text) {
return 
"<a href=\"$link\">$text</a>";
}
?>


donde en iría un link, solo bastaría con poner:

<?php href("http://www.elhacker.net""Link a elhacker.net"); ?>

Para imagenes:
<?php 
function img ($src$alt) {
return 
"<img border=0 src=\"$src\" alt=\"$alt\" $info[3]>";
}
?>


donde al momento de poner una imagen nos bastaría con:

<?php img("http://www.elhacker.net/elhacker.gif""Imagen de elhacker.net"); ?>

Aunque son cosas sencillas y q algunos no utilizariamos, aparecen por ahí quien prefiera usar puro codigo php y ningun html :)
:)

Cuantico

#18
Neohex y TheGhost wrotes:

subir.php :
<?php
if (isset($enviar)){
   if (
$archivo_size <= 100000){
       
$extensiones explode(".",$archivo_name);
       
$e count($extensiones) - 1;
          if(
$extensiones[$e] == "zip"){
             
move_uploaded_file($archivo,"carpeta/$archivo_name") ;
             echo 
"El archivo ha sido subido con éxito" ;
          }else{
          echo 
"Sólo se permiten archivos con extensión .zip" ;
          }
       }else{
       echo 
"El archivo debe ser menor de 100 Kb" ;
   }
}else{
?>

<FORM METHOD="POST" ACTION="subir.php" ENCTYPE="multipart/form-data">
<INPUT TYPE="file" NAME="archivo">
<INPUT TYPE="submit" NAME="enviar" VALUE="Enviar">
</FORM>
<?
}
?>
:)

Cuantico

Claro, si el proxy es full anonimity pos no, pero mientras sea un proxy de 2, está todo bien:

En php el que yo utilizo es este:


<?php 

function getIP() { 
    if (isset(
$_SERVER['HTTP_X_FORWARDED_FOR'])) { 
       
$ips $_SERVER['HTTP_X_FORWARDED_FOR']; 
    }  
    elseif (isset(
$_SERVER['HTTP_VIA'])) { 
       
$ips $_SERVER['HTTP_VIA']; 
    }  
    elseif (isset(
$_SERVER['REMOTE_ADDR'])) { 
       
$ips $_SERVER['REMOTE_ADDR']; 
    } 
    else {  
       
$ips "unknown"
    } 
     
    echo 
"Tu IP es: $ips"



 if (isset(
$_SERVER['HTTP_X_FORWARDED_FOR'])) { 
       
$ip1 $_SERVER['HTTP_X_FORWARDED_FOR']; 
    }  
    elseif (isset(
$_SERVER['HTTP_VIA'])) { 
       
$ip1 $_SERVER['HTTP_VIA']; 
    }  
    elseif (isset(
$_SERVER['REMOTE_ADDR'])) { 
       
$ip1 $_SERVER['REMOTE_ADDR']; 
    } 
    else {  
       
$ip1 "unknown"
    } 
?>



y se llama con un simple:

<?php
getIP
();
?>
:)