This site uses cookies own and third. If you continue to browse consider to accept the use of cookies. OK More Info.

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - tinc0h

Pages: [1]
1
Dudas y pedidos generales / Re: Problemas al subir dos imágenes
« on: July 16, 2021, 11:54:02 pm »
You are not allowed to view links. Register or Login
que tal rebe? mira, el error indica un problema de casteo de tipos en la linea 12 y 17 (pero no se cuales lineas son porque aquí no esta el codigo entero entonces no veo numeración para saber cuales lineas dice)

Te está diciendo el error que tienes un array y que tu lo quieres usar como string, es decir una de las variables que generaste tiene un array dentro y luego tu lo estas tratando de concatenar con un string por ejemplo (o cosa similar).

Yo creo que la linea 12 es esta:
echo  $file = $_FILES["file"];

y la linea 17 esta:
echo   $dimensiones = getimagesize($ruta_provisional);

SI te fijas estas dos variables contienen arrays (los files y las dimensiones que es x,y), y al ponerles "echo" te tiran ese notice, lo hacen 1 por cada linea y 2 veces porque subes 2 archivos (por eso hay 4 notices).

Por lo cual esos notices son irrelevantes (puedes usar var_dump en vez de echo para ver una variable),
(En resumen los notices son por usar los echos en arrays en esos casos),

 entonces por que tira error de tamaño?

Noxon tiene razón el getimagesize te está devolviendo segun tu imagen este tamaño:

31204160 que es la union de los dos echos de:
echo   $width = $dimensiones[0];
echo   $height = $dimensiones[1];

Vuelvo a insistir con usar var_dump($variable) en vez de echo $variable, porque no tirará ese tipo de notices, y te dirá el tipo del dato y el valor bien separado y entendible, en este caso al tener los dos pegados no sabes cuanto es de width y cuanto es de height, si no quisieras usar var_dump puedes poner PHP_EOL para poner saltos de linea y en caso de estar puedes dar click derecho ver codigo de fuente para ver correctamente porque html no cuenta saltos de linea si no son tag <br>.

echo   $width = $dimensiones[0].PHP_EOL;

echo   $height = $dimensiones[1].'<br/>';

$height = $dimensiones[1];
var_dump($height);

pero supongamos que los tamaños son justo la mitad de tu numero: 31204160 (3120x4160) en ese caso si estarías superando el tamaño de los ifs que sería maximo 2500:

if($width > 2500 || $height > 2500) {
$reporte .= "<p style='color: red'>Error $nombre, la anchura y la altura máxima permitida es de 500px</p>";
}

te recomiendo mejorar la forma que muestras para debuguear las variables, probar de nuevo y subirnos el codigo completo para poder ver la cantidad de lineas que lleva y donde tira los notices.

Slds!, nos comentas que tal.

Concuerdo con el amigo Alex, si lo que queres es mostrar esos valores en un futuro, primero ver bien como acceder a esos datos con var_dump() y después concatenar cerrando las comillas del echo con un punto.

Code: You are not allowed to view links. Register or Login
echo  "El nombre del archivo es : ".$nombre = $file["name"][$x]."<br>";
echo  "El archivo es tipo : ".$file["type"][$x]."<br>";

Saludos

2
Con este script se puede obtener algo similar si lo que se busca es la 'animación' en la web.
este es un ejemplo con fade in, hace un rand así que no va a seguir un patrón al ir mostrando el texto.

Code: (html5) You are not allowed to view links. Register or Login
<blockquote contenteditable="true"><q>Texto fade in slowly.</q>
  <cite>tinc0h</cite>
</blockquote>

Code: (css) You are not allowed to view links. Register or Login
* {
  box-sizing: border-box;
}
body {
  min-height: 100vh;
  background: #000;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
blockquote {
  font-size: 3rem;
}
cite {
  display: block;
  text-align: right;
  font-family: Verdana, Arial, sans-serif;
  margin-top: 1rem;
  font-size: .9rem;
  color: #aaa;
  font-style: normal;
}
blockquote q {
  font-family: Georgia, serif;
  font-style: italic;
  letter-spacing: .1rem;
}
blockquote q span {
  will-change: opacity, filter;
  opacity: 0;
  filter: blur(0px);
}
q {
  quotes: "“" "”" "‘" "’";
}
q:before {
    content: open-quote;
    margin-right: .8rem;
}
q:after {
  content: close-quote;
}
q:before, q:after {
  color: #ccc;
  font-size: 4rem;
}

Code: (javascript) You are not allowed to view links. Register or Login
function splitWords() {
  let quote = document.querySelector("blockquote q");
  quote.innerText.replace(/(<([^>]+)>)/ig,"");
  quotewords = quote.innerText.split(" "),
  wordCount = quotewords.length;
  quote.innerHTML = "";
  for (let i=0; i < wordCount; i++) {
    quote.innerHTML += "<span>"+quotewords[i]+"</span>";
    if (i < quotewords.length - 1) {
      quote.innerHTML += " ";
    }
  }
  quotewords = document.querySelectorAll("blockquote q span");
  fadeWords(quotewords);
}

function getRandom(min, max) {
  return Math.random() * (max - min) + min;
}

function fadeWords(quotewords) {
  Array.prototype.forEach.call(quotewords, function(word) {
    let animate = word.animate([{
      opacity: 0,
      filter: "blur("+getRandom(2,5)+"px)"
    }, {
      opacity: 1,
      filter: "blur(0px)"
    }],
    {
      duration: 1000,
      delay: getRandom(500,3300),
      fill: 'forwards'
    }
   )
  })
}
splitWords();

Acá dejo otro script que si escribe hacia un lado, se tiene que modificar bastante pero, funciona. También a diferencia del anterio, utiliza Jquery.

Code: (html5) You are not allowed to view links. Register or Login
<div class="container--main">
<div class="container--inner">
<div class="intro">
<p class="sub animate">ejemplo de</p>
<p class="title animate">Texto</p>
<p class="sub animate">escribiendose</p>
<p class="sub animate">Hacia un lado</p>
</div>
<div class="name">
<p id="typewriter"></p>
</div>
</div>
</div>

Code: (css) You are not allowed to view links. Register or Login
@import url('https://fonts.googleapis.com/css?family=Anton|Oswald:300');
$title : 'Anton', sans-serif;
$sub : 'Oswald', sans-serif;
.container {
&--main {
height: 100vh;
width: 100wh;
padding: 50px 100px;
margin: 0 auto;
position: relative;
display: flex;
align-items: center;
justify-content: flex-start;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
background-color: #111;
}
&--inner {
display: flex;
align-items: center;
justify-content: center;
transition: all 1s linear;
}
}
p {
color: #eee;
font-size: 1.6rem;
text-transform: uppercase;
margin: 0;
}
.intro {
opacity: 0;

&.visible {
opacity: 1;
}
p {
display: block;
text-align: right;
}
.title {
font-family: $title;
font-size: 50px;
}

.sub {
font-family: $sub;
}
}
.name {
font-family: $title;
margin-left: 20px;
line-height: 1;
p {
font-size: 15rem;
line-height: 1;
}
}
.typed-cursor{
    opacity: 1;
    -webkit-animation: blink 0.7s infinite;
    -moz-animation: blink 0.7s infinite;
    animation: blink 0.7s infinite;
}
@keyframes blink{
    0% { opacity:1; }
    50% { opacity:0; }
    100% { opacity:1; }
}

Code: (javascript) You are not allowed to view links. Register or Login
function textAnimation() {

    $('.animate').each(function() {
    var $allMsg = $(this);
    var $wordList = $(this).html().split("");
    $(this).html("");
    $.each($wordList, function(idx, elem) {
        var newEL = $("<span/>").text(elem).css({ opacity: 0 });
        newEL.appendTo($allMsg);
        newEL.delay(idx * 70);
        newEL.animate({ opacity: 1 }, 1100);
    });
    });

setTimeout(function() {
$("#typewriter").typed({
strings: ["olakace", "el tincoh pa"],
typeSpeed: 100,
startDelay: 0,
backSpeed: 60,
backDelay: 1000,
loop: true,
cursorChar: "",
contentType: 'html'
});
}, 2000)
}

$(window).on("load", function() {
$('.intro').addClass('visible');
textAnimation();
});


Saludos!

3
Back-end / Re: Buenas practicas en PHP
« on: June 01, 2021, 01:01:48 am »
Una muy buena practica al momento de enredarse entre IFs son los operadores ternarios.

El operador ternario es un operador condicional que disminuye la longitud del código mientras realiza comparaciones y condicionales. Este método es una alternativa para usar sentencias if-else y anidadas if-else. El orden de ejecución para este operador es de izquierda a derecha.

un ejemplo rápido para que se entienda.

Code: (php) You are not allowed to view links. Register or Login
($var==$condicion?true:false);
Comparando esta simplificación con una condicional IF común, nos ahorramos muchas líneas de código a veces, innecesarias o engorrosas..
También podemos modificar la misma variable que utilizamos para que se cumpla la condición, cuando se cumple o no.

Code: (php) You are not allowed to view links. Register or Login
($var==$condicion?$var=$condicion++:$var=null);
Si les parece interesante puedo desarrollar un post acerca de este tema!

Saludos!

Pages: [1]